Ver Fonte

第一个有数据的页面

HUJIANGUO há 3 anos atrás
pai
commit
0c8c8f0039
100 ficheiros alterados com 10260 adições e 6 exclusões
  1. 11 6
      config/index.js
  2. 21 0
      src/components/DilCommonUI/index.js
  3. 131 0
      src/components/DilCommonUI/packages/form/README.md
  4. 21 0
      src/components/DilCommonUI/packages/form/demo/01_base.vue
  5. 7 0
      src/components/DilCommonUI/packages/form/index.js
  6. 37 0
      src/components/DilCommonUI/packages/form/src/bsae-item.vue
  7. 87 0
      src/components/DilCommonUI/packages/form/src/common.js
  8. 46 0
      src/components/DilCommonUI/packages/form/src/form-group.vue
  9. 171 0
      src/components/DilCommonUI/packages/form/src/form-item.vue
  10. 67 0
      src/components/DilCommonUI/packages/form/src/form.vue
  11. 214 0
      src/components/DilCommonUI/packages/table/README.md
  12. 15 0
      src/components/DilCommonUI/packages/table/demo/01_BaseTable.vue
  13. 12 0
      src/components/DilCommonUI/packages/table/demo/02_CommonTable.vue
  14. 38 0
      src/components/DilCommonUI/packages/table/demo/03_OperateTable.vue
  15. 29 0
      src/components/DilCommonUI/packages/table/demo/04_RadioTable.vue
  16. 29 0
      src/components/DilCommonUI/packages/table/demo/05_SelectionTable.vue
  17. 36 0
      src/components/DilCommonUI/packages/table/demo/06_FilterTable.vue
  18. 7 0
      src/components/DilCommonUI/packages/table/index.js
  19. 326 0
      src/components/DilCommonUI/packages/table/src/table.js
  20. 243 0
      src/components/DilCommonUI/packages/table/src/table.vue
  21. 21 0
      src/views/TMS/app.html
  22. 28 0
      src/views/TMS/app.js
  23. 91 0
      src/views/TMS/bmsport/components/addHandlingFee.vue
  24. 97 0
      src/views/TMS/bmsport/components/handlingFee.vue
  25. 95 0
      src/views/TMS/bmsport/components/updateHandlingFee.vue
  26. 46 0
      src/views/TMS/bmsship/components/detailsOrder.vue
  27. 68 0
      src/views/TMS/bmsship/components/detailsStatement.vue
  28. 84 0
      src/views/TMS/bmsship/components/lossDetailsStatement.vue
  29. 132 0
      src/views/TMS/bmsship/components/shipBillingFormula.vue
  30. 84 0
      src/views/TMS/bmsship/components/shipResult.vue
  31. 69 0
      src/views/TMS/bmsship/components/statementDetailsOrder.vue
  32. 98 0
      src/views/TMS/bmsship/components/toBeStatement.vue
  33. 91 0
      src/views/TMS/bmsship/components/uncomplateDetails.vue
  34. 91 0
      src/views/TMS/bmsship/components/uncomplateWater.vue
  35. 95 0
      src/views/TMS/bmstrain/components/addTrainDetails.vue
  36. 51 0
      src/views/TMS/bmstrain/components/detailsTrainOrder.vue
  37. 88 0
      src/views/TMS/bmstrain/components/detailsTrainStatement.vue
  38. 69 0
      src/views/TMS/bmstrain/components/statementDetailsOrder.vue
  39. 48 0
      src/views/TMS/bmstrain/components/trainResult.vue
  40. 91 0
      src/views/TMS/bmstrain/components/uncomplateTrainDetails.vue
  41. 60 0
      src/views/TMS/bmstruck/components/detailsTruckOrder.vue
  42. 48 0
      src/views/TMS/bmstruck/components/truckResult.vue
  43. 62 0
      src/views/TMS/domesticMine/components/approveWagonPlease.vue
  44. 118 0
      src/views/TMS/domesticMine/components/approveWagonPleaseAdd.vue
  45. 99 0
      src/views/TMS/domesticMine/components/approveWagonPleaseEdit.vue
  46. 77 0
      src/views/TMS/domesticMine/components/entrust.vue
  47. 100 0
      src/views/TMS/domesticMine/components/wagonLoad.vue
  48. 435 0
      src/views/TMS/domesticMine/components/wagonLoadAdd.vue
  49. 103 0
      src/views/TMS/domesticMine/components/wagonLoadEdit.vue
  50. 290 0
      src/views/TMS/domesticMine/components/wagonLoadbu.vue
  51. 151 0
      src/views/TMS/domesticMine/components/wagonPlease.vue
  52. 94 0
      src/views/TMS/domesticMine/components/wagonPleaseAdd.vue
  53. 100 0
      src/views/TMS/domesticMine/components/wagonPleaseEdit.vue
  54. 92 0
      src/views/TMS/domesticMine/components/wagonUnLoad.vue
  55. 100 0
      src/views/TMS/domesticMine/components/wagonUnLoadAdd.vue
  56. 99 0
      src/views/TMS/domesticMine/components/wagonUnLoadEdit.vue
  57. 75 0
      src/views/TMS/download/index.vue
  58. 466 0
      src/views/TMS/importedEmergency/addWagonLoad.vue
  59. 105 0
      src/views/TMS/importedEmergency/addWagonUnLoad.vue
  60. 102 0
      src/views/TMS/importedEmergency/editWagonLoad.vue
  61. 100 0
      src/views/TMS/importedEmergency/editWagonUnLoad.vue
  62. 63 0
      src/views/TMS/importedEmergency/entrust.vue
  63. 93 0
      src/views/TMS/importedEmergency/trainDetails.vue
  64. 89 0
      src/views/TMS/importedEmergency/wagonLoad.vue
  65. 96 0
      src/views/TMS/importedEmergency/wagonUnLoad.vue
  66. 375 0
      src/views/TMS/importedFuel/transportReserveFuAdd.vue
  67. 178 0
      src/views/TMS/importedFuel/transportReserveRan.vue
  68. 581 0
      src/views/TMS/importedFuel/transportReserveRanAdd.vue
  69. 83 0
      src/views/TMS/importedFuel/transportReserveRanEdit.vue
  70. 60 0
      src/views/TMS/importedFuel/truckDriverReceiveRan.vue
  71. 78 0
      src/views/TMS/importedFuel/truckEnfactoryRanLaoResult.vue
  72. 78 0
      src/views/TMS/importedFuel/truckEnfactoryRanXingResult.vue
  73. 43 0
      src/views/TMS/importedFuel/truckJiMaoRanLaoResult.vue
  74. 43 0
      src/views/TMS/importedFuel/truckJiMaoRanXingResult.vue
  75. 44 0
      src/views/TMS/importedFuel/truckJiPiRanLaoResult.vue
  76. 44 0
      src/views/TMS/importedFuel/truckJiPiRanXingResult.vue
  77. 44 0
      src/views/TMS/importedFuel/truckLeaveFactoryRanLaoResult.vue
  78. 43 0
      src/views/TMS/importedFuel/truckLeaveFactoryRanXingResult.vue
  79. 56 0
      src/views/TMS/importedFuel/truckQualityRanLaoResult.vue
  80. 96 0
      src/views/TMS/importedFuel/truckQualityRanLaoResultEdit.vue
  81. 54 0
      src/views/TMS/importedFuel/truckQualityRanXingResult.vue
  82. 96 0
      src/views/TMS/importedFuel/truckQualityRanXingResultEdit.vue
  83. 42 0
      src/views/TMS/importedFuel/truckReceiptRanLaoResult.vue
  84. 43 0
      src/views/TMS/importedFuel/truckReceiptRanXingResult.vue
  85. 41 0
      src/views/TMS/importedFuel/truckUnloadRanLaoResult.vue
  86. 43 0
      src/views/TMS/importedFuel/truckUnloadRanXingResult.vue
  87. 120 0
      src/views/TMS/importedMine/components/addApproveWagonPlease.vue
  88. 475 0
      src/views/TMS/importedMine/components/addWagonLoad.vue
  89. 96 0
      src/views/TMS/importedMine/components/addWagonPlease.vue
  90. 102 0
      src/views/TMS/importedMine/components/addWagonUnLoad.vue
  91. 100 0
      src/views/TMS/importedMine/components/editApproveWagonPlease.vue
  92. 105 0
      src/views/TMS/importedMine/components/editWagonLoad.vue
  93. 100 0
      src/views/TMS/importedMine/components/editWagonPlease.vue
  94. 100 0
      src/views/TMS/importedMine/components/editWagonUnLoad.vue
  95. 63 0
      src/views/TMS/importedMine/components/entrust.vue
  96. 63 0
      src/views/TMS/importedMine/components/wagonApprove.vue
  97. 93 0
      src/views/TMS/importedMine/components/wagonLoad.vue
  98. 155 0
      src/views/TMS/importedMine/components/wagonPlease.vue
  99. 96 0
      src/views/TMS/importedMine/components/wagonUnLoad.vue
  100. 125 0
      src/views/TMS/importedTruck/components/assignmentPlan.vue

+ 11 - 6
config/index.js

@@ -46,15 +46,20 @@ let proxyTable = {
       '^/icore.icp.web/pass/act': '/'
     }
   },
-
-  
-  '/api/v1/oms/': {
-    target: 'http://172.16.33.161:9001', 
-    changeOrigin: true,
+  "/api/v1/cd": {
+    target: "http://172.16.33.166:8083",
+    ws: true,
     pathRewrite: {
-      '^/icore.icp.web/pass/logout': '/'
+      "^/api/v1/cd": "/api/v1/cd"
     }
   },
+  "/api/v1": {
+    target: "http://172.16.33.166:8080",
+    ws: true,
+    // pathRewrite: {
+    //   "^/api/v1": "/"
+    // }
+  },
   '/icore.icp.web/pass/logout': {
     target: 'http://172.16.33.161:9001/logout',
     changeOrigin: true,

+ 21 - 0
src/components/DilCommonUI/index.js

@@ -0,0 +1,21 @@
+import Table from "./packages/table/index.js";
+import Form from "./packages/form/index.js";
+
+const components = [Table, Form];
+
+const install = function(Vue) {
+  components.forEach(component => {
+    Vue.component(component.name, component);
+  });
+};
+
+if (typeof window !== "undefined" && window.Vue) {
+  install(window.Vue);
+}
+
+export default {
+  version: "0.1.0",
+  install,
+  Table,
+  Form
+};

+ 131 - 0
src/components/DilCommonUI/packages/form/README.md

@@ -0,0 +1,131 @@
+## 通用表单
+
+### 使用说明
+
+``` vue
+<template>
+  <!-- formId 为必传参数 -->
+  <!-- v-model 可以双向绑定表单内容-->
+  <dil-form formId="1" v-model="value"></dil-form>
+</template>
+<script>
+export default {
+  data() {
+    return {
+      // 这个是整个表单所填入的内容对象
+      value: {}
+    };
+  }
+};
+</script>
+```
+
+
+
+### 参数说明
+
+#### formId : 表格的唯一标识
+
+通过最后面的表单编辑器获取
+
+
+
+#### value : 表单所被填写的内容
+
+value 是一个对象,每个键值对代表一个表单项,键是参数名,值是用户所填写的内容
+
+
+
+## 后端接口说明
+
+### 参数说明
+
+#### data:Array 表单数据源
+
+```  javascript
+// 数据数组 包含多组表单数据
+[
+    // 一组表单
+    {
+        id:1,
+        // 当前组的标题
+        label:'',
+        // 当前组所包含的数据
+        list:[{
+            // 标签文本的内容
+            label:'名称',
+            // 属性名称
+            prop:'',
+            // 控件的类型
+            type:'',
+            
+            // 以下属性只要有一个就可以了
+            // radio:单选
+            radio:{
+                // 可选内容
+                list:[{
+                    // 默认值
+                    value:'',
+                    // Radio 的 value
+                    label:'',
+                    // 是否禁用
+                    disabled:false,
+                }],
+                // 可选内容为请求获取时
+                request:{
+                    // 请求地址
+                    url:'',
+                    // 请求方式
+                    method:'get',
+                    // 请求参数 跟在链接后的参数
+                    params:[{}],
+                	// 请求参数 请求体中的参数
+                	data:[{}],
+		        }
+              	// 默认选中值
+              	value:'',
+              },
+    			// checkbox:多选
+                
+                // input:普通的输入框
+                input:{
+                    // 默认值
+                    value:'',
+                    // 输入框占位文本
+                    placeholder:'',  
+                    // 禁用
+                    disabled:false,
+                    // 类型
+                    // text,textarea 和其他 原生 input 的 type 值
+                    type:'',
+                },
+                
+                // select:下拉选择器
+                select:{
+                    // 可选内容
+                    list:[{
+                        // 默认值 
+                        value :'',
+                        // 选项的标签,若不设置则默认与 value 相同
+                        label:'',
+                    }]
+                },
+                
+                // switch:开关
+                // time-picker:时间选择器
+                // date-picker:日期选择器
+                // datetime-picker:时间日期选择器
+                // textarea:多行文本
+            }
+        ]
+    }
+]
+```
+
+
+
+## 相关网站
+
+### 表单编辑器
+
+https://diluitable.steerinfo.com/#/addFormData

+ 21 - 0
src/components/DilCommonUI/packages/form/demo/01_base.vue

@@ -0,0 +1,21 @@
+<template>
+  <!-- formId 为必传参数 -->
+  <!-- v-model 可以双向绑定表单内容-->
+  <!-- @change 也可监听表单内容改变 -->
+  <dil-form formId="1" @change="onChange" v-model="value"></dil-form>
+</template>
+
+<script>
+export default {
+  data() {
+    return {
+      value: {}
+    };
+  },
+  methods: {
+    onChange(val) {
+      console.log(val);
+    }
+  }
+};
+</script>

+ 7 - 0
src/components/DilCommonUI/packages/form/index.js

@@ -0,0 +1,7 @@
+import DilForm from "./src/form";
+
+DilForm.install = function(Vue) {
+  Vue.component(DilForm.name, DilForm);
+};
+
+export default DilForm;

+ 37 - 0
src/components/DilCommonUI/packages/form/src/bsae-item.vue

@@ -0,0 +1,37 @@
+<script>
+export default {
+  name: "BaseItem",
+  model: {
+    prop: "item",
+    event: "change"
+  },
+  props: {
+    item: {
+      default() {
+        return {
+          list: []
+        };
+      }
+    }
+  },
+  data() {
+    return {
+      // 自己的数据对象
+      itemData: {}
+    };
+  },
+  watch: {
+    item: {
+      deep: true,
+      handler(item) {
+        this.change(item);
+      }
+    }
+  },
+  methods: {
+    change(item) {
+      this.$emit("change", item || this.item);
+    },
+  }
+};
+</script>

+ 87 - 0
src/components/DilCommonUI/packages/form/src/common.js

@@ -0,0 +1,87 @@
+import axios from "axios";
+// 是否使用本地测试模式
+const usingLocal = false;
+export default {
+  // 设置表单数据
+  setFormData(data, callback) {
+    const json = JSON.stringify(data);
+    if (usingLocal) {
+      localStorage["form_data"] = json;
+    } else {
+      axios
+        .request({
+          url: "/api/v1/cd/fromData/insert",
+          method: "post",
+          data: {
+            formDataJson: json
+          }
+        })
+        .then(response => {
+          if (response.status == 200) {
+            const d = response.data;
+            if (d.code) {
+              const data = d.data;
+              callback && callback.call(undefined, data);
+            }
+          }
+        });
+    }
+  },
+  // 修改表单数据
+  changeFormData(id, data, callback) {
+    const json = JSON.stringify(data);
+    if (usingLocal) {
+      this.setFormData(data, callback);
+    } else {
+      axios
+        .request({
+          url: "/api/v1/cd/fromData/update",
+          method: "post",
+          data: {
+            formDataJson: json,
+            formDataId: id
+          }
+        })
+        .then(response => {
+          if (response.status == 200) {
+            const d = response.data;
+            if (d.code) {
+              const data = d.data;
+              callback && callback.call(undefined, data);
+            }
+          }
+        });
+    }
+  },
+  // 获取表单数据
+  getFormData(id, callback) {
+    if (usingLocal) {
+      const json = JSON.parse(localStorage["form_data"]);
+      callback && callback.call(undefined, json);
+    } else {
+      if (!id) {
+        alert("表单唯一标识不能为空");
+        return;
+      }
+      axios
+        .request({
+          url: "/api/v1/cd/fromData/" + id,
+          method: "get"
+        })
+        .then(response => {
+          if (response.status == 200) {
+            const d = response.data;
+            if (d.code) {
+              const data = d.data;
+              if (data && data.form_data_json) {
+                const json = JSON.parse(data.form_data_json);
+                callback && callback.call(undefined, json);
+              } else {
+                alert("表单数据不存在,请检查表单id是否正确");
+              }
+            }
+          }
+        });
+    }
+  }
+};

+ 46 - 0
src/components/DilCommonUI/packages/form/src/form-group.vue

@@ -0,0 +1,46 @@
+<template>
+  <div class="preview-group">
+    <template v-if="item.label">
+      <div class="group-title">{{ item.label }}</div>
+      <el-divider></el-divider>
+    </template>
+    <form-item
+      v-for="item in item.list"
+      :key="item.id"
+      :item="item"
+      v-model="data[item.prop]"
+    >
+      <template #prefix>
+        <slot :name="item.prop + ' prefix'"></slot>
+      </template>
+      <template #suffix>
+        <slot :name="item.prop + ' suffix'"></slot>
+      </template>
+      <template #append>
+        <slot :name="item.prop + ' append'"></slot>
+      </template>
+      <template>
+        <slot :name="item.prop"></slot>
+      </template>
+    </form-item>
+    <slot></slot>
+  </div>
+</template>
+
+<script>
+import bsaeItemVue from "./bsae-item.vue";
+import FormItem from "./form-item.vue";
+export default {
+  name: "DilFomrGroup",
+  components: { FormItem },
+  mixins: [bsaeItemVue],
+  props: {
+    // 用户添加表单后提交的数据
+    data: {
+      default() {
+        return {};
+      }
+    }
+  },
+};
+</script>

+ 171 - 0
src/components/DilCommonUI/packages/form/src/form-item.vue

@@ -0,0 +1,171 @@
+<template>
+  <el-form-item :label="item.label || ''">
+    <!-- 单选 -->
+    <template v-if="item.type == 'radio'">
+      <el-radio-group v-model="dataValue">
+        <el-radio
+          v-for="(radio, index) in itemList"
+          :key="'radio_' + index"
+          v-bind="radio"
+          @click="onClick"
+        >
+        </el-radio>
+      </el-radio-group>
+    </template>
+
+    <!-- 多选 -->
+    <template v-else-if="item.type == 'checkbox'">
+      <el-checkbox-group v-model="checkboxValue" @change="onChangeCheck">
+        <el-checkbox
+          v-for="(checkbox, index) in itemList"
+          :key="'checkbox_' + index"
+          v-bind="checkbox"
+        >
+        </el-checkbox>
+      </el-checkbox-group>
+    </template>
+
+    <!-- 输入框 -->
+    <template v-else-if="item.type == 'input'">
+      <el-input v-bind="item.input" v-model="dataValue">
+        <template slot="prefix">
+          <!-- 头部内容 -->
+          <slot name="prefix"></slot>
+        </template>
+        <template #suffix>
+          <!-- 尾部内容 -->
+          <slot name="suffix"></slot>
+        </template>
+        <template #prepend>
+          <!-- 前置内容 -->
+          <slot name="prepend"></slot>
+        </template>
+        <template #append>
+          <!-- 后置内容 -->
+          <slot name="append"></slot>
+        </template>
+      </el-input>
+    </template>
+
+    <!-- 下拉选择框 -->
+    <template v-else-if="item.type == 'select'">
+      <el-select v-bind="item.select" v-model="dataValue">
+        <el-option
+          v-for="(option, index) in itemList"
+          :key="'option_' + index"
+          v-bind="option"
+        >
+        </el-option>
+        <slot></slot>
+        <template #prefix>
+          <!-- 头部内容 -->
+          <slot name="prefix"></slot>
+        </template>
+      </el-select>
+    </template>
+
+    <!-- 开关 -->
+    <template v-else-if="item.type == 'switch'">
+      <el-switch v-bind="item.timePicker" v-model="dataValue"></el-switch>
+    </template>
+
+    <!-- 时间选择器 -->
+    <template v-else-if="item.type == 'timePicker'">
+      <el-time-picker v-bind="item.timePicker" v-model="dataValue">
+      </el-time-picker>
+    </template>
+
+    <!-- 日期选择器 -->
+    <template v-else-if="item.type == 'datePicker'">
+      <el-date-picker
+        v-bind="item.datePicker"
+        :placeholder="item.datePicker.placeholder || '选择日期'"
+        :start-placeholder="item.datePicker.startPlaceholder || '开始日期'"
+        :end-placeholder="item.datePicker.endPlaceholder || '结束日期'"
+        v-model="dataValue"
+        @change="onChangeCheck"
+      >
+      </el-date-picker>
+    </template>
+
+    <!-- 远程搜索 -->
+    <template v-else-if="item.type == 'autocomplete'">
+      <el-autocomplete v-bind="item.autocomplete" v-model="dataValue">
+      </el-autocomplete>
+    </template>
+
+    <slot></slot>
+  </el-form-item>
+</template>
+
+<script>
+import axios from "axios";
+export default {
+  name: "DilFormItem",
+  model: {
+    prop: "itemValue",
+    event: "change",
+  },
+  props: {
+    item: {
+      type: Object,
+      require: true,
+    },
+    itemValue: {
+      default: null,
+    },
+  },
+  data() {
+    return {
+      checkboxValue: [],
+      // 列表内容数组
+      itemList: [],
+    };
+  },
+  created() {
+    const item = this.item;
+    if (item[item.type]) {
+      const sourceType = item[item.type].sourceType;
+      switch (sourceType) {
+        case "request":
+          {
+            const requestObj = item[item.type].request;
+            if (requestObj.url) {
+              axios.request({ ...requestObj }).then((res) => {
+                if (res.status == 200) {
+                  if (res.data.code == 200) {
+                    this.itemList = res.data.data;
+                  }
+                }
+              });
+            }
+          }
+          break;
+        case "list":
+          this.itemList = item[item.type].list.list;
+          break;
+      }
+    }
+  },
+  computed: {
+    dataValue: {
+      get() {
+        return this.itemValue;
+      },
+      set(value) {
+        this.onChange(value);
+      },
+    },
+  },
+  methods: {
+    onChange(value) {
+      this.$emit("change", value);
+    },
+    onChangeCheck(value) {
+      this.dataValue = value;
+    },
+  },
+};
+</script>
+
+<style></style>

+ 67 - 0
src/components/DilCommonUI/packages/form/src/form.vue

@@ -0,0 +1,67 @@
+<template>
+  <el-form v-bind="$attrs" v-on="$listeners" :label-width="labelWidth">
+    <form-group
+      v-for="item in list"
+      :key="item.id"
+      :item="item"
+      :data="value"
+    ></form-group>
+  </el-form>
+</template>
+
+<script>
+import formGroup from "./form-group.vue";
+import Tool from "./common.js";
+export default {
+  name: "DilForm",
+  components: { formGroup },
+  model: {
+    prop: "value",
+    event: "change"
+  },
+  props: {
+    // 用户输入的值
+    value: {
+      default() {
+        return {};
+      }
+    },
+    // 表单唯一标识
+    formId: {
+      default: "",
+      required: true
+    },
+    labelWidth: {
+      default: "auto"
+    }
+  },
+  data() {
+    return {
+      list: []
+    };
+  },
+  created() {
+    if (this.formId) {
+      Tool.getFormData(this.formId, data => (this.list = data));
+    } else {
+      this.$alert("参数缺失 : formId");
+    }
+  },
+  methods: {
+    // 抛出事件
+    change(val) {
+      this.$emit("change", val);
+    }
+  },
+  watch: {
+    value: {
+      deep: true,
+      handler(val) {
+        this.change(val);
+      }
+    }
+  }
+};
+</script>
+
+<style></style>

+ 214 - 0
src/components/DilCommonUI/packages/table/README.md

@@ -0,0 +1,214 @@
+## 通用表格使用说明
+### 属性说明
+
+
+
+#### requestUrl : string
+
+表格请求的地址
+
+示例:
+
+``` js
+//全地址
+requestUrl:http://192.168.10.113:8081/api/v1/truck/type/status2;
+//后半截地址
+requestUrl:/api/v1/truck/type/status2;
+```
+
+
+
+#### requestQuery : object
+
+表格请求的参数:用于自己触发筛选和排序时使用
+
+可传入参数
+
+
+
+
+
+#### current-page : number
+
+当前页数,支持 .sync 修饰符
+
+默认是第一页
+
+
+
+#### page-size : number
+
+每页显示条目个数,支持 .sync 修饰符
+
+默认是 每页十条
+
+
+
+#### page-sizes : number[]
+
+每页显示个数选择器的选项设置
+
+默认是 [1,2,5,10]
+
+
+
+#### type : string
+
+表格类型:目前支持:base , common
+
+之后会根据需求增加更多的类型
+
+
+
+#### lastColumnData : array[object]
+
+表格最右边列的数据信息,数组中是放一个对象,对象中的属性如下,
+
+基本和Table-column Attributes的相同,
+
+``` js
+lastColumnData:[{
+    // 表头显示的文案
+    label: "操作",
+    // 设置列的宽度
+    width: 100,
+    // 固定操作列
+    fixed: 'right',
+    // 注意!!!
+    // 操作列按钮点击触发的操作改为 $emit 抛事件的形式
+    // 默认可以获取 scope 属性;里面的具体内容和el-table一样
+    template: `
+		<el-button type="text" size="mini" @click="$emit('transportProgress',scope.row)" > 
+			运输进度 
+		</el-button>
+	`,
+}]
+```
+
+
+
+
+
+### 事件说明
+
+#### radio-change(row)
+
+用于当选表格,当用户改变选中行数据时调用,返回选中行的数据对象 **row**
+
+用户再次点击取消选中时,会返回一个**空对象 {}**
+
+
+
+#### selection-change(rows)
+
+用于多选表格,当选择项发生变化时会触发该事件
+
+返回所有被选中的行的数据的数组 rows[]
+
+即使换页,依然保留被选中的数据
+
+
+
+### 方法说明
+
+#### refreshData()
+
+用户主动刷新表格数据
+
+
+
+## 接口相关说明
+
+### 请求参数说明
+
+链接后的参数
+
+``` json
+// 表格头接口的唯一标识
+apiId:13
+// 控制当前显示第几页
+pageNum:1
+// 控制当前每页显示几条
+pageSize:10
+```
+
+请求体的参数
+
+``` json
+// 排序的数据的参数字段
+orderField:""
+// 排序类型 asc : 升序;  desc : 降序;
+orderType:""
+
+// 需要筛选时,键值对的键,是需要筛选的参数的字段名,
+// 键值对的值,是个数组,存放符合条件的字段值,
+// 筛选的字段可以同时存在多条
+[筛选字段名]:[筛选字段值1,筛选字段值2]
+```
+
+
+
+### 回调参数要求
+
+``` json
+{
+    // 状态码 0:标识成功
+    "code": "0",
+    // 后端自定义给前端的数据对象
+    "data": {
+        // 表格的数据源
+        "list": [
+            // 每行表的数据内容
+            {
+                // 每行数据的唯一标识 必设项
+                "ROW_ID":"",
+            }
+        ],
+
+        // 表头的数据内容
+        // 表头按需要的显示顺序排序
+        "columnData": [
+            // 每个表头的相关信息
+            // 这个之后会根据需求不断添加
+            {
+                // 唯一标识 必设项
+                "data_id": "",
+                // 对应列内容的字段名 必设项
+                "prop": "",
+                // 显示的标题 必设项
+                "label": "",
+
+                // 一下为 非必填选项
+                // 自定义列模板
+                // html的字符串
+                // 当有这个属性时,会忽略label属性
+                "template": "",
+
+                // 列的宽度 非必填选项
+                "width": "",
+                // 当前列对应的 筛选功能数组 非必填选项
+                "filters":[
+                    {
+                        // 筛选选项 所对应的后端数值
+                        value:0,
+                        // 筛选选项 的中文名称
+                        text:"",
+                    },
+                ],
+            },
+        ],
+        
+        // 总条目数
+        "total": 0
+    }
+}
+```
+
+
+
+## 相关网站说明
+
+### 配置表头数据地址
+
+https://diluitable.steerinfo.com/#/
+

+ 15 - 0
src/components/DilCommonUI/packages/table/demo/01_BaseTable.vue

@@ -0,0 +1,15 @@
+<template>
+  <!-- 基础表格 无另写样式 -->
+  <!-- 在需要显示表格的位置写上标签 -->
+  <!-- 并绑定请求地址的链接 -->
+  <!-- type 默认为 common -->
+  <div>
+    <dilTable
+      requestUrl="/api/v1/td/truck/type/status2?apiId=13"
+      type="base"
+     
+    >
+    </dilTable>
+  </div>
+</template>
+

+ 12 - 0
src/components/DilCommonUI/packages/table/demo/02_CommonTable.vue

@@ -0,0 +1,12 @@
+<template>
+  <!-- 通用表格 包含了通用的表格样式 -->
+  <div>
+    <!-- 在需要显示表格的位置写上标签 -->
+    <!-- 表格请求数据的地址 -->
+    <dilTable
+     
+      requestUrl="/api/v1/td/truck/type/status2?apiId=13"
+    >
+    </dilTable>
+  </div>
+</template>

+ 38 - 0
src/components/DilCommonUI/packages/table/demo/03_OperateTable.vue

@@ -0,0 +1,38 @@
+<template>
+  <!-- 通用表格 包含了通用的表格样式 -->
+  <div class="opertate">
+    <!-- 在需要显示表格的位置写上标签 -->
+    <!-- 传递熟悉建议用 v-bind.sync 的形式传递 -->
+    <!-- 监听事件和平时使用一样 -->
+
+    <dilTable v-bind.sync="option" @transportProgress="transportProgress">
+      <el-table-column label="操作">
+        <template>
+          <el-button type="text" size="mini" @click="transportProgress(scope)">
+            运输进度
+          </el-button>
+        </template>
+      </el-table-column>
+    </dilTable>
+  </div>
+</template>
+
+<script>
+export default {
+  data() {
+    return {
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/td/truck/type/status2?apiId=13"
+      }
+    };
+  },
+  methods: {
+    // 声明操作列事件回调方法
+    // 参数和element table 回调的参数一样
+    transportProgress(scope) {
+      console.log(scope);
+    }
+  }
+};
+</script>

+ 29 - 0
src/components/DilCommonUI/packages/table/demo/04_RadioTable.vue

@@ -0,0 +1,29 @@
+<template>
+  <!-- 单选表格 -->
+  <div class="radio">
+    <!-- 在需要显示表格的位置写上标签 -->
+    <!-- 传递熟悉建议用 v-bind.sync 的形式传递 -->
+    <dilTable v-bind.sync="option" @radio-change="currentRadioChange"></dilTable>
+  </div>
+</template>
+
+<script>
+export default {
+  data() {
+    return {
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/td/truck/type/status2?apiId=13",
+        // 控制显示当选列
+        selectionType: "radio",
+      },
+    };
+  },
+  methods: {
+    currentRadioChange(row) {
+      console.log("当前选中行的数据:");
+      console.log(row);
+    },
+  },
+};
+</script>

+ 29 - 0
src/components/DilCommonUI/packages/table/demo/05_SelectionTable.vue

@@ -0,0 +1,29 @@
+<template>
+  <!-- 单选表格 -->
+  <div class="selection">
+    <!-- 在需要显示表格的位置写上标签 -->
+    <!-- 传递熟悉建议用 v-bind.sync 的形式传递 -->
+    <dilTable v-bind.sync="option" @selection-change="selectionChange"></dilTable>
+  </div>
+</template>
+
+<script>
+export default {
+  data() {
+    return {
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/td/truck/type/status2?apiId=13",
+        // 控制显示多选列
+        selectionType: "select",
+      },
+    };
+  },
+  methods: {
+    selectionChange(selection) {
+      console.log("所有选中行的数据:");
+      console.log(selection);
+    },
+  },
+};
+</script>

+ 36 - 0
src/components/DilCommonUI/packages/table/demo/06_FilterTable.vue

@@ -0,0 +1,36 @@
+<template>
+  <!-- 外部控制筛选 -->
+  <div>
+    <div class="filter_box">
+      <el-input v-model="inputValue" placeholder="请输入内容">车牌号</el-input>
+      <el-button @click="onClick">筛选</el-button>
+    </div>
+
+    <dilTable
+      requestUrl="/api/v1/td/truck/type/status2?apiId=13"
+      :requestQuery="requestQuery"
+    ></dilTable>
+  </div>
+</template>
+
+<script>
+export default {
+  data() {
+    return {
+      inputValue: "",
+      requestQuery: { capacity_number: 0 },
+    };
+  },
+  methods: {
+    onClick() {
+      this.requestQuery.capacity_number = this.inputValue;
+    },
+  },
+};
+</script>
+
+<style>
+.filter_box {
+  display: flex;
+}
+</style>

+ 7 - 0
src/components/DilCommonUI/packages/table/index.js

@@ -0,0 +1,7 @@
+import DilTable from "./src/table.vue";
+
+DilTable.install = function(Vue) {
+  Vue.component(DilTable.name, DilTable);
+};
+
+export default DilTable;

+ 326 - 0
src/components/DilCommonUI/packages/table/src/table.js

@@ -0,0 +1,326 @@
+import Sortablejs from "sortablejs";
+export default {
+  data() {
+    return {
+      // 等数据渲染完了再显示
+      isShow: false,
+      // 自己 请求体 参数
+      dataRequestQuery: {},
+      // 自己的表数据
+      dataTabel: [],
+      // 自己的表头数据
+      dataColumnData: [],
+      // 拖拽的表头数据
+      dataDropColumn: [],
+      // 自己的数据总条数
+      dataTotal: 0,
+      // 自己的当前页面数
+      dataCurrentPage: 1,
+      // 自己的每页显示条目个数
+      dataPageSize: 10,
+      // 保存表格所有页面所选中的数据
+      dataSelection: [],
+      // 保存表格单选的数据 保存数据的id
+      dataRadioId: ""
+    };
+  },
+  created() {
+    this.dataCurrentPage = this.currentPage;
+    this.dataPageSize = this.pageSize;
+    console.log(this)
+    this.requestData();
+  },
+  mounted() {
+    //行拖拽
+    // this.rowDrop();
+    //列拖拽
+    this.columnDrop();
+  },
+  methods: {
+    // 通过请求获取数据
+    requestData(options) {
+      let pageNum = undefined;
+      let pageSize = undefined;
+      
+      if (options) {
+        pageNum = options.pageNum;
+        pageSize = options.pageSize;
+        
+      }
+      
+      if (this.requestUrl) {
+        // 处理请求地址逻辑
+        let url;
+        if (this.requestUrl.indexOf("//") > -1) {
+          url = this.requestUrl;
+        } else {
+          url = this.requestUrl;
+        }
+        // 处理请求地址逻辑
+
+        if (
+          !this.dataTotal ||
+          (this.dataCurrentPage - 1) * this.dataPageSize < this.dataTotal
+        ) {
+          // 判断是否需要在请求体中放入参数
+          if(this.requestQuery){
+            console.log(" 判断是否需要在请求体中放入参数")
+            
+            this.dataRequestQuery=this.requestQuery;
+            console.log(this.dataRequestQuery.resultBreakId)
+          }
+
+          let data = undefined;
+          for (const key in this.dataRequestQuery) {
+         
+            const val = this.dataRequestQuery[key];
+            console.log(val)
+            if (val||val==0) {
+             
+              if (!data) data = {};
+            
+              data[key] = val;
+            }
+          }
+        
+          // 发送请求
+          this.axios
+            .post(url, data, {
+              // 请求地址 中
+              params: {
+                pageNum: pageNum || this.dataCurrentPage,
+                pageSize: pageSize || this.dataPageSize
+              }
+            })
+            .then(response => {
+              let d = response.data.data;
+              this.dataTabel = d.list;
+              this.dataTotal = d.total;
+              //执行成功的回调
+              this.$emit('func',response.data.data);
+              this.refreshColumnData(d.columnData);
+
+              this.isShow = true;
+            });
+        }
+      } else {
+        console.warn("requestUrl 参数不能为 null");
+      }
+    },
+    // 刷新表头显示数据
+    refreshColumnData(columnData) {
+      // 表头只赋值一次
+      if (this.dataColumnData.length > 0) return;
+
+      // 如果前端有写表头,则加在后端表头前面
+      const d = this.columnData.concat(columnData);
+
+      // 把操作列拼接到最后一列
+      this.dataColumnData = d;
+      this.dataDropColumn = [].concat(this.dataColumnData);
+    },
+    // 排序回调
+    sortChange({ column, prop, order }) {
+      // column : 列的数据
+      // prop : 排序字段参数名
+      // order : 排序方式 (ascending:升序;descending:降序;null:无)
+
+      // 前端排序
+      // const sort = {
+      //   ascending: (a, b) => {
+      //     a[prop] = this.getString(a[prop]);
+      //     b[prop] = this.getString(b[prop]);
+      //     return a[prop].localeCompare(b[prop] || "", 'zh-CN');
+      //   },
+      //   descending: (a, b) => {
+      //     a[prop] = this.getString(a[prop]);
+      //     b[prop] = this.getString(b[prop]);
+      //     return b[prop].localeCompare(a[prop] || "", 'zh-CN')
+      //   },
+      // };
+      // this.dataTabel.sort(sort[order]);
+      // 前端排序
+
+      // 后端排序
+      let s = {
+        ascending: "asc",
+        descending: "desc"
+      };
+
+      let value = {
+        orderType: s[order] || undefined,
+        orderField: order ? prop : undefined
+      };
+
+      this.setDataRequestQuery(value);
+    },
+    // 更新请求参数
+    setDataRequestQuery(value) {
+      let q = this.dataRequestQuery;
+      for (const key in value) {
+        q[key] = value[key];
+      }
+      this.requestData(q);
+      this.$emit("update:requestQuery", q);
+      this.dataRequestQuery = q;
+    },
+    // 格式化字符串
+    getString(str) {
+      if (str != null && str != undefined && str.toString) {
+        return str.toString();
+      } else {
+        return str || "";
+      }
+    },
+    // 当某一行被点击时会触发该事件
+    rowClick(row, column, event) {
+      if (this.selectionType == "radio") {
+        if (this.dataRadioId == row.ROW_ID) {
+          this.dataRadioId = "";
+          row = {};
+        } else {
+          this.dataRadioId = row.ROW_ID;
+        }
+        this.$emit("radio-change", row);
+      }
+    },
+    // 多选的选中行改变回调
+    selectionChange(selection) {
+      this.dataSelection = selection;
+      // 将多选中的数据抛出
+      this.$emit("selection-change", selection);
+    },
+    // 当表格的筛选条件发生变化的时候会触发该事件,
+    // 参数的值是一个对象,对象的 key 是 column 的 columnKey,对应的 value 为用户选择的筛选条件的数组。
+    filterChange(filters) {
+      let value = {};
+      for (const key in filters) {
+        value[key] = filters[key].length > 0 ? filters[key] : undefined;
+      }
+      // 每次筛选时,都默认将页面改为第一页,避免数据过少时,显示没有数据
+      this.currentChange(1, false);
+      this.setDataRequestQuery(value);
+    },
+    // 行拖拽
+    rowDrop() {
+      const tbody = document.querySelector(".el-table__body-wrapper tbody");
+      const _this = this;
+      Sortablejs.create(tbody, {
+        onEnd({ newIndex, oldIndex }) {
+          const currRow = _this.dataTabel.splice(oldIndex, 1)[0];
+          _this.dataTabel.splice(newIndex, 0, currRow);
+        }
+      });
+    },
+    // 列拖拽
+    columnDrop() {
+      const wrapperTr = document.querySelector(".el-table__header-wrapper tr");
+      this.sortablejs = Sortablejs.create(wrapperTr, {
+        animation: 180,
+        delay: 0,
+        handle: ".allowDrag",
+        onEnd: evt => {
+          // 因为序号列和单多选列不在数组中,所以需要进行偏移计算
+          const offset = this.dragColumnOffset;
+          evt.oldIndex -= offset;
+          evt.newIndex -= offset;
+          // 换列
+          const oldItem = this.dataDropColumn[evt.oldIndex];
+          this.dataDropColumn.splice(evt.oldIndex, 1);
+          this.dataDropColumn.splice(evt.newIndex, 0, oldItem);
+        }
+      });
+    },
+    // current-page 改变时会触发
+    currentChange(val, isRequest = true) {
+      this.dataCurrentPage = val;
+      if (isRequest) {
+        this.requestData({ pageNum: val });
+      }
+      // 最后通知父节点页面改变
+      this.$emit("update:current-page", val);
+    },
+    // pageSize 改变时会触发
+    sizeChange(val) {
+      this.dataPageSize = val;
+      this.requestData({});
+      this.$emit("update:size-change", val);
+    }
+  },
+  computed: {
+    // 计算是否使用排序功能
+    dataSortable() {
+      return function (item) {
+        if (item.template) {
+          return false;
+        } else if (item.sortable) {
+          return item.sortable;
+        } else {
+          return this.sortable;
+        }
+      };
+    },
+    // 计算每列的最小宽度
+    dataColumnMinWidth() {
+      return function (item) {
+        let mw = 0;
+        if (this.dataSortable(item)) {
+          // 如果使用排序功能
+          mw += 30;
+        }
+
+        if (item.filters && item.filters.length > 0) {
+          mw += 20;
+        }
+        if (item.label) {
+          mw += item.label.toString().length * 30;
+        }
+        return mw;
+      };
+    },
+    // 计算拖拽列的偏移差
+    dragColumnOffset() {
+      let o = 0;
+      if (this.showIndex) {
+        o++;
+      }
+      if (this.selectionType != "") {
+        o++;
+      }
+      return o;
+    }
+  },
+  watch: {
+    requestQuery: {
+      deep: true,
+      handler(val, oldVal) {
+        let q = this.dataRequestQuery;
+        for (const key in val) {
+          q[key] = val[key] ? val[key] : undefined;
+        }
+
+        this.setDataRequestQuery(q);
+      }
+    }
+  },
+  // 注册组件
+  components: {
+    // 代理组件
+    componentProxy: {
+      props: {
+        html: {
+          default: ""
+        },
+        scope: {
+          default() {
+            return {};
+          }
+        }
+      },
+      template: ``,
+      created() {
+        this.$options.template = this.html;
+      }
+    }
+  }
+};

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

@@ -0,0 +1,243 @@
+<template>
+  <div class="st-base-table" v-show="isShow">
+    <!-- 表格主体 -->
+    <el-table
+      ref="mainTable"
+      :data="dataTabel"
+      row-key="ROW_ID"
+      :stripe="stripe"
+      :border="border"
+      :row-class-name="rowClassName"
+      :cell-class-name="cellClassName"
+      :height="height"
+      :max-height="maxHeight"
+      :highlight-current-row="highlightCurrentRow"
+      @sort-change="sortChange"
+      @selection-change="selectionChange"
+      @filter-change="filterChange"
+      @row-click="rowClick"
+    >
+      <!-- 多选列 -->
+      <el-table-column
+        v-if="selectionType == 'select'"
+        type="selection"
+        width="50"
+        align="center"
+        fixed="left"
+        :reserve-selection="reserveSelection"
+        :resizable="false"
+      >
+      </el-table-column>
+
+      <!-- 单选 -->
+      <el-table-column
+        v-if="selectionType == 'radio'"
+        width="50"
+        align="center"
+        label="单选"
+        fixed="left"
+        :resizable="false"
+      >
+        <template slot-scope="scope">
+          <el-radio
+            :value="dataRadioId"
+            :label="scope.row.ROW_ID"
+            @click.native.prevent.stop="rowClick(scope.row)"
+          >
+            {{ "" }}
+          </el-radio>
+        </template>
+      </el-table-column>
+
+      <!-- 序号 -->
+      <el-table-column
+        v-if="showIndex"
+        type="index"
+        width="50"
+        label="序号"
+        align="center"
+        fixed="left"
+        :resizable="false"
+      >
+      </el-table-column>
+
+      <!-- 表格列 -->
+      <el-table-column
+        v-for="(item, index) in dataColumnData"
+        :key="item.data_id || 'auto_' + index"
+        v-bind="item"
+        :column-key="dataDropColumn[index].prop"
+        :align="item.align || align"
+        :sortable="dataSortable(item)"
+        :show-overflow-tooltip="item.showOverflowTooltip || showOverflowTooltip"
+        :min-width="item['min-width'] || dataColumnMinWidth(item)"
+        :class-name="item['class-name'] || 'allowDrag'"
+      >
+        <!-- 表格每行的内容 -->
+        <div slot-scope="scope">
+          <!-- 功能位置 -->
+          <component-proxy
+            v-if="item.template"
+            :html="item.template"
+            :scope="scope"
+            v-on="$listeners"
+          >
+          </component-proxy>
+
+          <!-- 文本位置 -->
+          <template v-else>
+            {{ dataTabel[scope.$index][dataDropColumn[index].prop] }}
+          </template>
+        </div>
+      </el-table-column>
+
+      <!-- 默认插槽 -->
+      <slot></slot>
+    </el-table>
+
+    <!-- 分页器 -->
+    <el-pagination
+      v-if="isPagination"
+      :layout="layout"
+      :current-page="dataCurrentPage"
+      :page-sizes="pageSizes"
+      :page-size="dataPageSize"
+      :total="dataTotal"
+      @current-change="currentChange"
+      @size-change="sizeChange"
+    >
+    </el-pagination>
+  </div>
+</template>
+
+<script>
+import table from "./table.js";
+export default {
+  name: "DilTable",
+  extends: table,
+  props: {
+    // 请求地址
+    requestUrl: {
+      default: "",
+    },
+    // 请求参数 请求体中的参数
+    requestQuery: {
+      default() {
+        return {};
+      },
+    },
+    // 表头数据
+    columnData: {
+      default() {
+        return [];
+      },
+    },
+    // 是否显示序号
+    showIndex: {
+      default: true,
+    },
+    // 是否显示选择框
+    // radio : 显示单选框
+    // select : 显示多选框
+    selectionType: {
+      default: "",
+    },
+    // 是否 在数据翻页后保留之前选中的数据(需指定 row-key)
+    reserveSelection: {
+      default: true,
+    },
+    // 是否为斑马纹 table
+    stripe: {
+      default: true,
+    },
+    // Table 的高度,默认为自动高度。
+    // 如果 height 为 number 类型,单位 px;
+    // 如果 height 为 string 类型,则这个高度会设置为 Table 的 style.height 的值,Table 的高度会受控于外部样式。
+    height: {
+      default: null,
+    },
+    // Table 的最大高度。合法的值为数字或者单位为 px 的高度。
+    //sdada
+    maxHeight: {
+      default: null,
+    },
+    // 是否启用排序
+    sortable: {
+      default: "custom",
+    },
+    // 对齐方式 left/center/right
+    align: {
+      default: "center",
+    },
+    // 是否带有纵向边框
+    border: {
+      default: true,
+    },
+    // 是否要高亮当前行
+    highlightCurrentRow: {
+      default: false,
+    },
+    // 当内容过长被隐藏时显示 tooltip
+    showOverflowTooltip: {
+      default: true,
+    },
+    // 行的 className 的回调方法,也可以使用字符串为所有行设置一个固定的 className。
+    rowClassName: {
+      default() {
+        return ({ row, rowIndex }) => "";
+      },
+    },
+    // 单元格的 className 的回调方法,也可以使用字符串为所有单元格设置一个固定的 className。
+    cellClassName: {
+      default() {
+        return ({ row, rowIndex }) => "";
+      },
+    },
+
+    // 是否启用分页器
+    isPagination: {
+      default: true,
+    },
+    // 当前页数,支持 .sync 修饰符
+    currentPage: {
+      default: 1,
+    },
+    // 每页显示个数选择器的选项设置
+    pageSizes: {
+      default() {
+        return [10, 20, 50, 100, 200];
+      },
+    },
+    // 每页显示条目个数,支持 .sync 修饰符
+    pageSize: {
+      default: 10,
+    },
+    //组件布局,子组件名用逗号分隔
+    layout: {
+      default: "total, prev, pager, next, sizes, jumper",
+    },
+  },
+  watch:{
+    requestUrl(){
+      this.refreshData();
+    }
+  },
+  methods: {
+    // 刷新表格数据
+    refreshData() {
+      this.requestData();
+    },
+    toggleRowExpansion(row, expanded) {
+      this.$refs.mainTable.toggleRowExpansion(row, expanded);
+    },
+  },
+};
+</script>
+
+<style lang="scss" scoped>
+@media print {
+  .el-pagination {
+    display: none;
+  }
+}
+</style>

+ 21 - 0
src/views/TMS/app.html

@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+    <meta name="renderer" content="webkit">
+    <meta content="工业互联网平台 iCore-ICP" name="keywords">
+    <meta content="工业互联网平台 iCore-ICP" name="description">
+    <title>加载中... - 工业互联网平台 iCore-ICP</title>
+    <link href="../static/css/common.css" rel="stylesheet"/>
+    <link href="../static/img/favicon.ico" rel="shortcut icon"/>
+    <script src="../static/lib/jquery/jquery.min.js" type="text/javascript"></script>
+    <script src="../static/lib/jquery/jquery.PrintArea.js" type="text/javascript"></script>
+    <script src="../static/lib/qrcode.min.js" type="text/javascript"></script>
+    <script src='../static/lib/XLSX/xlsx.core.min.js' type='text/javascript'></script>
+    <script src="../static/js/common.js" type="text/javascript"></script>
+  </head>
+  <body>
+    <div id="app"></div>
+  </body>
+</html>

+ 28 - 0
src/views/TMS/app.js

@@ -0,0 +1,28 @@
+// The Vue build version to load with the `import` command
+// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
+import Vue from 'vue';
+import App from '@/components/App.vue';
+// include
+import '@/config/include.js';
+// 通用store
+import store from '@/store/index.js';
+
+// router
+// import router from '../router/index.js';
+
+
+// 注册表格的全局组件
+import DilCommonUI from "@/components/DilCommonUI";
+Vue.use(DilCommonUI);
+
+// 关闭生产模式下给出的提示
+Vue.config.productionTip = false;
+
+/* eslint-disable no-new */
+new Vue({
+  el: '#app',
+  router,
+  store,
+  components: { App },
+  template: '<App/>'
+});

+ 91 - 0
src/views/TMS/bmsport/components/addHandlingFee.vue

@@ -0,0 +1,91 @@
+<template>
+  <!-- 船只信息页面 -->
+  <div class="homeworkPath">
+    <page-title>港口装卸费</page-title>
+    <div class="main">
+      <span class="text">港口装卸费新增</span>
+      <span class="a"></span>
+    </div>
+    <div>
+      <div class="form-box" style="margin-left: 5rem">
+        <el-form ><dil-form :formId="222" v-model="form"></dil-form></el-form>
+      </div>
+    </div>
+    <div class="button-ins">
+      <el-button type="primary" @click="makeSure">新增港口装卸费</el-button>
+    </div>
+    <dilTable v-bind.sync="option" @radio-change="currentRadioChange">
+    </dilTable>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      restaurants: [],
+      state: "",
+      form: {},
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/bms/getBatch?apiId=115",
+        // 控制显示当选列
+        selectionType: "radio",
+        rowMap:{},
+      },
+    };
+  },
+  mounted() {
+  },
+  methods: {
+    currentRadioChange(row) {
+      this.rowMap=row
+      console.log(this.rowMap);
+    },
+    // 新增
+    makeSure() {
+      let mapVal = {
+        feeMaterialTonnage: this.form.feeMaterialTonnage,
+      };
+      console.log(mapVal);
+      if (
+      mapVal.feeMaterialTonnage==null
+      ) this.$message.error("存在空值!");
+      else
+      this.$axios
+        .post(
+          "/api/v1/bms/addPortHandlingFee",
+          {
+           mapVal:mapVal,
+           rowMap:this.rowMap
+          }
+        )
+        .then((res) => {
+          if (res.data.code == 200) {
+            this.$message({
+              type: "success",
+              message: "新增成功!",
+            });
+            // this.$refs.table.refreshData();
+            this.$router.go(-1);
+          } else {
+            this.$message.error("新增失败!");
+          }
+          this.$refs['table'].resetField();
+        });
+    },
+    handleSelect(item) {
+      console.log(item);
+    },
+    onclick() {
+      console.log(1);
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+@import "@/styles/appoint/contract/ContractInsert.scss";
+</style>

+ 97 - 0
src/views/TMS/bmsport/components/handlingFee.vue

@@ -0,0 +1,97 @@
+<template>
+  <!-- 港口装卸费页面 -->
+  <div class="homeworkPath">
+    <div class="top">
+      <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" class="btn" @click="addclick">
+        新增
+      </el-button>
+    </div>
+    <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
+          >
+          <el-button
+            type="text"
+            size="small"
+            @click="deleteclick(scope.row.feeId)"
+            >删除</el-button
+          >
+        </template>
+      </el-table-column>
+    </dilTable>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "homeworkPath",
+  data() {
+    return {
+      input:"",
+      restaurants: [],
+      state: "",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/bms/getPortHandlingFeeList?apiId=151"
+      },
+    };
+  },
+  mounted() {
+  },
+  methods: {
+    handleSelect(item) {
+      console.log(item);
+    },
+    onclick() {
+      this.option.requestUrl = "/api/v1/bms/getPortHandlingFeeList?apiId=151&con="+this.input;
+    },
+    click(feeId) {
+      this.$router.push("/updateHandlingFee/" + feeId);
+    },
+    addclick() {
+      this.$router.push("/addHandlingFee");
+    },
+    deleteclick(scope) {
+      let feeId = scope;
+      this.$confirm("是否删除", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+        center: true,
+      })
+        .then(() => {
+          this.$axios
+            .post(
+              "/api/v1/bms/deletePortHandlingFee/" + feeId
+            )
+            .then(() => {
+                        this.$message({
+            type: "success",
+            message: "删除成功!",
+          });
+              this.$router.go(0);
+            });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "取消删除!",
+          });
+        });
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+.homeworkPath {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 95 - 0
src/views/TMS/bmsport/components/updateHandlingFee.vue

@@ -0,0 +1,95 @@
+<template>
+  <!-- 修改港口装卸费 -->
+  <div id="contractDetails">
+    <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="223" 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>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+export default {
+  components: { PageTitle },
+ data(){
+     return {
+      form1: {},
+  }
+ },
+  mounted() {
+    this.information();
+  },
+  methods: {
+    information() {
+      //编辑位置作业
+      this.$axios
+        .post("/api/v1/bms/getFeeToUpdate/" + this.$route.params.feeId)
+        .then((res) => {
+          res.data.data.forEach((e) => {
+            this.form1 = e;
+            // console.log(e);
+            // console.log(this.form1);
+            // console.log(this.$route.params.loadingId);
+          });
+        });
+    },
+    handleCheckedCitiesChange(value) {
+      console.log(value);
+    },
+    // 返回
+    onClickCancel() {
+      this.$router.go(-1);
+    },
+    currentRadioChange(row) {
+      this.aaaa = row;
+    },
+    // 确认
+    onClickConfirm() {
+      let mapVal = {
+        feeId: this.$route.params.feeId,
+        materialId: this.form1.materialId,
+        feeForeignShipName: this.form1.feeForeignShipName,
+        feeMaterialTonnage: this.form1.feeMaterialTonnage,
+        priceId: this.form1.priceId,
+        feeValue: this.form1.feeValue,
+      };
+      console.log(mapVal);
+      this.$axios
+        .post(
+          "/api/v1/bms/updatePortHandlingFee",
+          mapVal
+        )
+        .then((res) => {
+          if (res.data.code == 200) {
+            this.$message({
+              type: "success",
+              message: "修改成功!",
+            });
+            // this.$refs.table.refreshData();
+            this.$router.go(-1);
+          } else {
+            this.$message.error("修改失败!");
+          }
+          this.$refs['table'].resetField();
+        });
+    },
+  },
+};
+</script>
+<style lang="scss" scoped>
+@import "@/styles/appoint/contract/ContractInsert.scss";
+</style>

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

@@ -0,0 +1,46 @@
+<template>
+  <!-- 船运计费账单页面 -->
+  <div class="purchaseOrder">
+    <div class="top">
+      <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>
+
+    </div>
+    <dilTable v-bind.sync="option" class="table">
+      
+    </dilTable>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "purchaseOrder",
+  data() {
+    return {
+      input:"",
+      restaurants: [],
+      state: "",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/bms/getDetailsOrderList?apiId=93",
+      },
+    };
+  },
+  mounted() {
+  },
+  methods: {
+    onclick() {
+      this.option.requestUrl = "/api/v1/bms/getDetailsOrderList?apiId=93&con="+this.input;
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+.purchaseOrder {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 68 - 0
src/views/TMS/bmsship/components/detailsStatement.vue

@@ -0,0 +1,68 @@
+<template>
+  <!-- 船运计费详单页面 -->
+  <div class="purchaseOrder">
+    <div class="top">
+      <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="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" >
+      <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>
+
+<script>
+export default {
+  name: "purchaseOrder",
+  data() {
+    return {
+      input:"",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/bms/getStatementList?apiId=113",
+      },
+    };
+  },
+  methods: {
+    onclick() {
+      this.option.requestUrl = "/api/v1/bms/getStatementList?apiId=113&con="+this.input;
+    },
+    btnclick(row) {
+      this.$router.push("/bmsship/statementDetailsOrder/" + row.batchId + "?statementId=" + row.statementId);
+    },
+    shipclick() {
+      this.$router.push("/bmsship/uncomplateDetails");
+    },
+    waterclick() {
+      this.$router.push("/bmsship/uncomplateWater");
+    },
+    click() {
+      this.$router.push("/bmsship/toBeStatement");
+    }
+  },
+};
+</script>
+<style lang='scss' scoped>
+.purchaseOrder {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

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

@@ -0,0 +1,84 @@
+<template>
+  <!-- 船运计费详单页面 -->
+  <div class="purchaseOrder">
+    <div class="top">
+      <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="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>
+
+<script>
+export default {
+  name: "purchaseOrder",
+  data() {
+    return {
+      input:"",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/bms/getLossStatementList?apiId=113",
+        // // 控制显示多选列
+        // selectionType: "select",
+        // mapList:[],
+      },
+    };
+  },
+  methods: {
+    // selectionChange(selection) { 
+    //   this.mapList=selection
+    // },
+    onclick() {
+      this.option.requestUrl = "/api/v1/bms/getLossStatementList?apiId=113&con="+this.input;
+    },
+    // btnclick(row) {
+    //   this.$router.push("/bmsship/statementDetailsOrder/" + row.batchId + "?statementId=" + row.statementId);
+    // },
+    // click() {
+    //   this.$confirm("是否生成", "提示", {
+    //     confirmButtonText: "确定",
+    //     cancelButtonText: "取消",
+    //     type: "warning",
+    //     center: true,
+    //   })
+    //     .then(() => {
+    //       this.$message({
+    //         type: "success",
+    //         message: "生成途损账单成功!",
+    //       });
+    //   this.$axios.post("/api/v1/bmsship/bmsshipstatement/addLossStatement",this.mapList)
+    //               .then(() => {
+    //           this.$router.go(0);
+    //         });
+    //     })
+    //     .catch(() => {
+    //       this.$message({
+    //         type: "info",
+    //         message: "取消生成!",
+    //       });
+    //     });
+      // this.$router.push("/path/addHomeworkPath/");
+    // },
+  },
+};
+</script>
+<style lang='scss' scoped>
+.purchaseOrder {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 132 - 0
src/views/TMS/bmsship/components/shipBillingFormula.vue

@@ -0,0 +1,132 @@
+<template>
+  <!-- 计费公式页面 -->
+  <div id="expression">
+    <!-- 计算公式 -->
+    <div>
+      <img src="@/assets/img/min.png" alt="" />
+      <span>水运费计算公式</span>
+    </div>
+    <hr />
+    <table>
+      <!-- <tr v-for="(item, i) in shipFeesFormula" :key="i"> -->
+        <td class="left">{{ shipFeesFormula.formula_name }} :</td>
+        <td>
+          <span>{{ shipFeesFormula.formula_string }}</span>
+        </td>
+      <!-- </tr> -->
+    </table>
+        <!-- 计算公式 -->
+    <div>
+      <img src="@/assets/img/min.png" alt="" />
+      <span>水分检测费计算公式</span>
+    </div>
+    <hr />
+    <table>
+      <!-- <tr v-for="(item, i) in waterFeesFormula" :key="i"> -->
+        <td class="left">{{ waterFeesFormula.formula_name }} :</td>
+        <td>
+          <span>{{ waterFeesFormula.formula_string }}</span>
+        </td>
+      <!-- </tr> -->
+    </table>
+        <!-- 计算公式 -->
+    <div>
+      <img src="@/assets/img/min.png" alt="" />
+      <span>途损费计算公式</span>
+    </div>
+    <hr />
+    <table>
+      <!-- <tr v-for="(item, i) in lossFeesFormula" :key="i"> -->
+        <td class="left">{{ lossFeesFormula.formula_name }} :</td>
+        <td>
+          <span>{{ lossFeesFormula.formula_string }}</span>
+        </td>
+      <!-- </tr> -->
+    </table>
+  </div>
+</template>
+
+<script>
+export default {
+  data() {
+    return {
+      shipFeesFormula: {},
+      lossFeesFormula: {},
+      waterFeesFormula: {},
+    };
+  },
+  created() {
+    // 获取水运费计算公式
+    this.$axios
+      .post("/api/v1/bms/getShipFeesFormula")
+      .then((res) => {
+        this.shipFeesFormula = res.data.data;
+        console.log(this.shipFeesFormula);
+      });
+    // 获取油价
+    this.$axios
+      .post("/api/v1/bms/getLossFeesFormula")
+      .then((res) => {
+        this.lossFeesFormula = res.data.data;
+        console.log(this.lossFeesFormula);
+      });
+      // 获取油价
+    this.$axios
+      .post("/api/v1/bms/getWaterFeesFormula")
+      .then((res) => {
+        this.waterFeesFormula = res.data.data;
+        console.log(this.waterFeesFormula);
+      });
+  },
+};
+</script>
+
+<style scoped>
+#expression {
+  margin-top: 4.375rem;
+  margin-left: 1.875rem;
+}
+#oilPrice {
+  margin-top: 4.375rem;
+}
+img {
+  width: 1rem;
+}
+span {
+  margin-left: 0.625rem;
+}
+hr {
+  margin: -0.5rem 1.875rem 0 7.5rem;
+  background-color: rgb(220, 223, 231);
+  height: 0.0625rem;
+  border: none;
+}
+table {
+  margin-top: 3.125rem;
+  margin-left: 3.125rem;
+  width: 93.75rem;
+  border: 0.0625rem solid rgb(220, 223, 231);
+  border-collapse: collapse;
+}
+.left {
+  width: 10.25rem;
+  background: #f0f7ff;
+  text-align: center;
+}
+.right {
+  text-align: left;
+}
+tr {
+  height: 2.875rem;
+}
+td {
+  height: 6.25rem ; text-align:initial; border: 0.0625rem solid rgb(220, 223, 231);
+}
+.el-input {
+  width: 6.25rem;
+  text-align: center;
+}
+.oil {
+  margin-left: 0.625rem;
+}
+</style>

+ 84 - 0
src/views/TMS/bmsship/components/shipResult.vue

@@ -0,0 +1,84 @@
+<template>
+  <!-- 船运实绩页面 -->
+  <div class="purchaseOrder">
+    <div class="top">
+      <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="click">
+        生成水分检测账单
+      </el-button> -->
+    </div>
+    <dilTable v-bind.sync="option">
+    </dilTable>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "purchaseOrder",
+  data() {
+    return {
+      input:"",
+      restaurants: [],
+      state: "",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/bms/getShipResult?apiId=112&batchId="
+        + this.$route.params.batchId,
+        //         // 控制显示多选列
+        // selectionType: "select",
+        // mapList:[],
+      },
+    };
+  },
+  mounted() {
+  },
+  methods: {
+  //  selectionChange(selection) { 
+  //     this.mapList=selection
+  //   }, 
+    onclick() {
+      console.log(1);
+    },
+    // click() {
+    //   console.log(this.mapList);
+    //   this.$confirm("是否生成", "提示", {
+    //     confirmButtonText: "确定",
+    //     cancelButtonText: "取消",
+    //     type: "warning",
+    //     center: true,
+    //   })
+    //     .then(() => {
+    //       this.$message({
+    //         type: "success",
+    //         message: "生成水分检测账单成功!",
+    //       });
+    //   this.$axios.post("/api/v1/bmsship/bmsshipstatement/addWaterStatement",this.mapList)
+    //               .then(() => {
+    //           console.log(this.mapList);
+    //           this.$router.go(0);
+    //         });
+    //     })
+    //     .catch(() => {
+    //       this.$message({
+    //         type: "info",
+    //         message: "取消生成!",
+    //       });
+    //     });
+    // }
+  },
+};
+</script>
+<style lang='scss' scoped>
+.purchaseOrder {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 69 - 0
src/views/TMS/bmsship/components/statementDetailsOrder.vue

@@ -0,0 +1,69 @@
+<template>
+  <!-- 船运计费账单所属详单页面 -->
+  <div class="purchaseOrder">
+    <div class="top">
+    </div>
+     <el-divider content-position="left">计费详单</el-divider>
+    <dilTable v-bind.sync="option">
+      <el-table-column fixed="right" label="操作" align="center" width="100">
+        <template slot-scope="scope">
+          <el-button @click="btnclick(scope.row.batchId)" type="text" size="small"
+            >船运实绩</el-button
+          >
+          <!-- <el-button @click="onclick(scope.row.batchId)" type="text" size="small"
+            >汽运实绩</el-button
+          > -->
+        </template>
+      </el-table-column>
+    </dilTable>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "purchaseOrder",
+  data() {
+    return {
+      input:"",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/bms/getStatementDetailsOrderList?apiId=93&batchId="
+          + this.$route.params.batchId + "&statementId=" + this.$route.query.statementId,
+      },
+      tableData: [{
+            shipperName: '',
+            shipCost: '',
+            lossCost: '',
+            waterFees: '',
+            statementTotalAmount: ''
+          }]
+    };
+  },
+  mounted(){
+    // this.initialization();
+  },
+  methods: {
+    // initialization(){
+    //   this.$axios.post('/api/v1/bmsship/bmsshipstatement/getAllCost?batchId='+this.$route.params.batchId).then((res)=>{
+    //     this.tableData = res.data.data
+    //   })
+    // },
+    // onclick(batchId) {
+    //   this.$route.push("/bmsship/shipResult/" + batchId)
+    // },
+    btnclick(batchId) {
+      this.$router.push("/bmsship/shipResult/" + batchId);
+    },
+    // click(batchId) {
+    //   this.$route.push("/bmsship/shipResult/" + batchId)
+    // },
+  },
+};
+</script>
+<style lang='scss' scoped>
+.purchaseOrder {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 98 - 0
src/views/TMS/bmsship/components/toBeStatement.vue

@@ -0,0 +1,98 @@
+<template>
+  <!-- 船运计费详单页面 -->
+  <div class="purchaseOrder">
+    <div class="top">
+      <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="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>
+export default {
+  name: "purchaseOrder",
+  data() {
+    return {
+      input:"",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/bms/getBatch?apiId=115",
+        // 控制显示当选列
+        selectionType: "radio",
+        map:{},
+      },
+    };
+  },
+  methods: {
+    currentRadioChange(row) {
+      this.map=row
+      console.log(row);
+    },
+    onclick() {
+      this.option.requestUrl = "/api/v1/bms/getBatch?apiId=115&con="+this.input;
+    },
+    btnclick() {
+      this.$confirm("是否生成", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+        center: true,
+      })
+        .then(() => {
+         
+      this.$axios.post("/api/v1/bms/addLossStatement",this.map)
+                  .then((res) => {
+                    var  num = res.data.data;
+                    console.log(num,"num");
+                    if( num > 0){
+                       this.$message({
+                          type: "success",
+                          message: "生成账单成功!",
+                        });
+                    }else{
+                       this.$message({
+                          type: "warning",
+                          message: "未产生途损费用!",
+                        });
+                    }
+              this.$router.go(-1);
+            });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "取消生成!",
+          });
+        });
+      // this.$router.push("/path/addHomeworkPath/");
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+.purchaseOrder {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 91 - 0
src/views/TMS/bmsship/components/uncomplateDetails.vue

@@ -0,0 +1,91 @@
+<template>
+  <!-- 船运计费详单页面 -->
+  <div class="purchaseOrder">
+    <div class="top">
+      <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="btnclick">
+        生成水运费账单
+      </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>
+export default {
+  name: "purchaseOrder",
+  data() {
+    return {
+      input:"",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/bms/getUncomplateDetailsOrderList?apiId=93",
+        // 控制显示多选列
+        selectionType: "select",
+        mapList:[],
+      },
+    };
+  },
+  methods: {
+    selectionChange(selection) { 
+      this.mapList=selection
+    },
+    onclick() {
+      console.log(1);
+    },
+    btnclick() {
+      this.$confirm("是否生成", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+        center: true,
+      })
+        .then(() => {
+          this.$message({
+            type: "success",
+            message: "生成账单成功!",
+          });
+      this.$axios.post("/api/v1/bms/addStatement",this.mapList)
+                  .then(() => {
+              this.$router.go(0);
+            });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "取消生成!",
+          });
+        });
+      // this.$router.push("/path/addHomeworkPath/");
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+.purchaseOrder {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 91 - 0
src/views/TMS/bmsship/components/uncomplateWater.vue

@@ -0,0 +1,91 @@
+<template>
+  <!-- 船运计费详单页面 -->
+  <div class="purchaseOrder">
+    <div class="top">
+      <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="btnclick">
+        生成水分检测费账单
+      </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>
+export default {
+  name: "purchaseOrder",
+  data() {
+    return {
+      input:"",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/bms/getWaterResult?apiId=114",
+        // 控制显示多选列
+        selectionType: "select",
+        mapList:[],
+      },
+    };
+  },
+  methods: {
+    selectionChange(selection) { 
+      this.mapList=selection
+    },
+    onclick() {
+      console.log(1);
+    },
+    btnclick() {
+      this.$confirm("是否生成", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+        center: true,
+      })
+        .then(() => {
+          this.$message({
+            type: "success",
+            message: "生成账单成功!",
+          });
+      this.$axios.post("/api/v1/bms/addWaterStatement",this.mapList)
+                  .then(() => {
+              this.$router.go(-1);
+            });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "取消生成!",
+          });
+        });
+      // this.$router.push("/path/addHomeworkPath/");
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+.purchaseOrder {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 95 - 0
src/views/TMS/bmstrain/components/addTrainDetails.vue

@@ -0,0 +1,95 @@
+<template>
+  <!-- 火运计费详单页面 -->
+  <div class="purchaseOrder">
+    <div class="top">
+      <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="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>
+export default {
+  name: "purchaseOrder",
+  data() {
+    return {
+      input:"",
+      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);
+    },
+    onclick() {
+      console.log(1);
+    },
+    btnclick() {
+      this.$confirm("是否生成", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+        center: true,
+      })
+        .then(() => {
+          this.$message({
+            type: "success",
+            message: "生成详单成功!",
+          });
+      this.$axios.post("/api/v1/bms/addTrainDetails",this.map)
+                  .then(() => {
+              this.$router.go(-1);
+            });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "取消生成!",
+          });
+        });
+      // this.$router.push("/path/addHomeworkPath/");
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+.purchaseOrder {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

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

@@ -0,0 +1,51 @@
+<template>
+  <!-- 火运计费详单页面 -->
+  <div class="purchaseOrder">
+    <div class="top">
+      <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="detailsclick">
+        生成详单
+      </el-button>
+    </div>
+    <dilTable v-bind.sync="option">
+      
+    </dilTable>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "purchaseOrder",
+  data() {
+    return {
+      input:"",
+      restaurants: [],
+      state: "",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/bms/getTrainDetailsOrderList?apiId=118",
+      },
+    };
+  },
+  mounted() {
+  },
+  methods: {
+    onclick() {
+      this.option.requestUrl = "/api/v1/bms/getTrainDetailsOrderList?apiId=118&con="+this.input;
+    },
+    detailsclick() {
+        this.$router.push("/bmstrain/addTrainDetails");
+    }
+  },
+};
+</script>
+<style lang='scss' scoped>
+.purchaseOrder {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 88 - 0
src/views/TMS/bmstrain/components/detailsTrainStatement.vue

@@ -0,0 +1,88 @@
+<template>
+  <!-- 火运费账单页面 -->
+  <div class="purchaseOrder">
+    <div class="top">
+      <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="trainclick">
+        生成火运费账单
+      </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>
+
+<script>
+export default {
+  name: "purchaseOrder",
+  data() {
+    return {
+      input:"",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/bms/getTrainStatementList?apiId=121",
+
+      },
+    };
+  },
+  methods: {
+    onclick() {
+      this.option.requestUrl = "/api/v1/bms/getTrainStatementList?apiId=121&con="+this.input;
+    },
+    btnclick(row) {
+      this.$router.push("/bmstrain/statementDetailsOrder/" + row.batchId + "?statementId=" + row.statementId);
+    },
+    trainclick() {
+      this.$router.push("/bmstrain/uncomplateTrainDetails");
+    },
+    // waterclick() {
+    //   this.$router.push("/bmsship/uncomplateWater");
+    // },
+    // click() {
+    //   this.$confirm("是否生成", "提示", {
+    //     confirmButtonText: "确定",
+    //     cancelButtonText: "取消",
+    //     type: "warning",
+    //     center: true,
+    //   })
+    //     .then(() => {
+    //       this.$message({
+    //         type: "success",
+    //         message: "生成途损账单成功!",
+    //       });
+    //   this.$axios.post("/api/v1/bmsship/bmsshipstatement/addLossStatement",this.mapList)
+    //               .then(() => {
+    //           this.$router.go(-1);
+    //         });
+    //     })
+    //     .catch(() => {
+    //       this.$message({
+    //         type: "info",
+    //         message: "取消生成!",
+    //       });
+    //     });
+    //   // this.$router.push("/path/addHomeworkPath/");
+    // },
+    // click() {
+    //   this.$router.push("/bmsship/toBeStatement");
+    // }
+  },
+};
+</script>
+<style lang='scss' scoped>
+.purchaseOrder {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 69 - 0
src/views/TMS/bmstrain/components/statementDetailsOrder.vue

@@ -0,0 +1,69 @@
+<template>
+  <!-- 火运计费账单所属详单页面 -->
+  <div class="purchaseOrder">
+    <div class="top">
+    </div>
+     <el-divider content-position="left">计费详单</el-divider>
+    <dilTable v-bind.sync="option">
+      <el-table-column fixed="right" label="操作" align="center" width="100">
+        <template slot-scope="scope">
+          <el-button @click="btnclick(scope.row.detailsId)" type="text" size="small"
+            >火运实绩</el-button
+          >
+          <!-- <el-button @click="onclick(scope.row.batchId)" type="text" size="small"
+            >汽运实绩</el-button
+          > -->
+        </template>
+      </el-table-column>
+    </dilTable>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "purchaseOrder",
+  data() {
+    return {
+      input:"",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/bms/getComplateTrainDetailsList?apiId=118&batchId="
+          + this.$route.params.batchId + "&statementId=" + this.$route.query.statementId,
+      },
+      tableData: [{
+            shipperName: '',
+            shipCost: '',
+            lossCost: '',
+            waterFees: '',
+            statementTotalAmount: ''
+          }]
+    };
+  },
+  mounted(){
+    // this.initialization();
+  },
+  methods: {
+    // initialization(){
+    //   this.$axios.post('/api/v1/bmsship/bmsshipstatement/getAllCost?batchId='+this.$route.params.batchId).then((res)=>{
+    //     this.tableData = res.data.data
+    //   })
+    // },
+    // onclick(batchId) {
+    //   this.$route.push("/bmsship/shipResult/" + batchId)
+    // },
+    btnclick(detailsId) {
+      this.$router.push("/bmstrain/trainResult/" + detailsId);
+    },
+    // click(batchId) {
+    //   this.$route.push("/bmsship/shipResult/" + batchId)
+    // },
+  },
+};
+</script>
+<style lang='scss' scoped>
+.purchaseOrder {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 48 - 0
src/views/TMS/bmstrain/components/trainResult.vue

@@ -0,0 +1,48 @@
+<template>
+  <!-- 火运实绩页面 -->
+  <div class="purchaseOrder">
+    <div class="top">
+      <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>
+    </div>
+    <dilTable v-bind.sync="option">
+    </dilTable>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "purchaseOrder",
+  data() {
+    return {
+      restaurants: [],
+      state: "",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/bms/getStatementTrainResultList?apiId=122&detailsId="
+        + this.$route.params.detailsId
+      },
+    };
+  },
+  mounted() {
+  },
+  methods: {
+    onclick() {
+      console.log(1);
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+.purchaseOrder {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 91 - 0
src/views/TMS/bmstrain/components/uncomplateTrainDetails.vue

@@ -0,0 +1,91 @@
+<template>
+  <!-- 火运计费详单页面 -->
+  <div class="purchaseOrder">
+    <div class="top">
+      <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="btnclick">
+        生成火运费账单
+      </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>
+export default {
+  name: "purchaseOrder",
+  data() {
+    return {
+      input:"",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/bms/getUncomplateTrainDetailsList?apiId=118",
+        // 控制显示多选列
+        selectionType: "select",
+        mapList:[],
+      },
+    };
+  },
+  methods: {
+    selectionChange(selection) { 
+      this.mapList=selection
+    },
+    onclick() {
+      console.log(1);
+    },
+    btnclick() {
+      this.$confirm("是否生成", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+        center: true,
+      })
+        .then(() => {
+          this.$message({
+            type: "success",
+            message: "生成账单成功!",
+          });
+      this.$axios.post("/api/v1/bms/addTrainStatement",this.mapList)
+                  .then(() => {
+              this.$router.go(-1);
+            });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "取消生成!",
+          });
+        });
+      // this.$router.push("/path/addHomeworkPath/");
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+.purchaseOrder {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 60 - 0
src/views/TMS/bmstruck/components/detailsTruckOrder.vue

@@ -0,0 +1,60 @@
+<template>
+  <!-- 汽运计费详单页面 -->
+  <div class="purchaseOrder">
+    <div class="top">
+      <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>
+
+    </div>
+    <dilTable v-bind.sync="options">
+      <el-table-column fixed="right" label="操作" align="center" width="100">
+        <template slot-scope="scope">
+          <el-button @click="btnclick(scope.row.orderId)" type="text" size="small"
+            >汽运实绩</el-button
+          >
+        </template>
+      </el-table-column>
+    </dilTable>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "purchaseOrder",
+  data() {
+    return {
+      input:"",
+      restaurants: [],
+      state: "",
+      options: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/bms/getTruckDetailsOrderList?apiId=140&orderType=3",
+      },
+    };
+  },
+  mounted() {
+  },
+  watch:{
+        // value1(){
+        //   this.option.requestUrl="/api/v1/bmsship/bmsshipdetailsorder/getDetailsOrderList/93?con="+this.value1
+        // }
+      },
+  methods: {
+    onclick() {
+        this.options.requestUrl = "/api/v1/bms/getTruckDetailsOrderList?apiId=140&orderType=3&con="+this.input;
+    },
+    btnclick(orderId) {
+      this.$router.push("/bmstruck/truckResult/" + orderId);
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+.purchaseOrder {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 48 - 0
src/views/TMS/bmstruck/components/truckResult.vue

@@ -0,0 +1,48 @@
+<template>
+  <!-- 汽运实绩页面 -->
+  <div class="purchaseOrder">
+    <div class="top">
+      <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>
+    </div>
+    <dilTable v-bind.sync="option">
+    </dilTable>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "purchaseOrder",
+  data() {
+    return {
+      restaurants: [],
+      state: "",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/bms/getTruckResultList?apiId=142&orderId="
+        + this.$route.params.orderId
+      },
+    };
+  },
+  mounted() {
+  },
+  methods: {
+    onclick() {
+      console.log(1);
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+.purchaseOrder {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 62 - 0
src/views/TMS/domesticMine/components/approveWagonPlease.vue

@@ -0,0 +1,62 @@
+<template>
+  <!-- 批车作业页面 -->
+  <div class="homeworkPath">
+    <div class="top">
+      <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="btnclick">
+        <i class="el-icon-plus"></i>新增
+      </el-button>
+    </div>
+
+    <dilTable v-bind.sync="option">
+      <el-table-column fixed="right" label="操作" width="50">
+        <template slot-scope="scope">
+          <el-button
+            @click="updateClick(scope.row.resultId)"
+            type="text"
+            size="small"
+          >
+            修改
+          </el-button>
+        </template>
+      </el-table-column>
+    </dilTable>
+  </div>
+</template>
+
+
+<script>
+export default {
+  name: "wagonPlease",
+  data() {
+    return {
+      input: "",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "api/v1/tms/getApproveAllWagonPlease?apiId=70&resultType=3",
+      },
+    };
+  },
+  methods: {
+    onclick() {
+      this.option.requestUrl = "api/v1/tms/getApproveAllWagonPlease?apiId=70&resultType=3&con="+this.input;
+    },
+    btnclick() {
+      this.$router.push("/domesticMine/approveWagonPleaseAdd");
+    },
+    updateClick(resultId) {
+      this.$router.push("/domesticMine/approveWagonPleaseEdit/" + resultId);
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+.homeworkPath {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 118 - 0
src/views/TMS/domesticMine/components/approveWagonPleaseAdd.vue

@@ -0,0 +1,118 @@
+<template>
+  <!-- 新增批车作业页面 -->
+  <div id="contractDetails">
+    <page-title>批车作业</page-title>
+
+    <div class="main">
+      <span class="text">选择已下发请车作业</span>
+      <span class="a"></span>
+    </div>
+ 
+  <div>
+      <dilTable
+        v-bind.sync="option"
+        v-model="table1"
+        @change="handleCheckedCitiesChange"
+        ref="table"
+        @radio-change="currentRadioChange"
+      >
+    
+      </dilTable>
+    </div>
+    <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="105" v-model="form1"></dil-form>
+        </div>
+      </div>
+    </div>
+    <div class="button-box">
+      <el-button @click="onClickCancel">返回</el-button>
+      <el-button type="primary" @click="onClickConfirm">确认</el-button>
+      
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      option: {
+        // 表格请求数据的地址
+        requestUrl:
+          "/api/v1/tms/getAllWagonPlease?apiId=57&status=1&resultType=3",
+        // 控制显示当选列
+        selectionType: "radio",
+      },
+      // 表单
+      form1: {},
+      // 表格
+      table1: {},
+      contractId: "",
+      inf: {},
+    };
+  },
+  mounted() {
+    // this.unit();
+  },
+  methods: {
+    handleCheckedCitiesChange(value) {
+      console.log(value);
+    },
+    // 返回
+    onClickCancel() {
+      this.$router.go(-1);
+    },
+    currentRadioChange(row) {
+      this.inf = row;
+    },
+    // 确认
+    onClickConfirm() {
+      let approveWagonPlease = {
+        resultId: this.inf.resultId,
+        resultApproveDate: sjTime(this.form1.resultApproveDate),
+        resultApproveNumber: this.form1.resultApproveNumber
+      };
+      function isNumber() {
+        var value = approveWagonPlease.resultApproveNumber;
+        //验证是否为数字
+        var patrn = /^(-)?\d+(\.\d+)?$/;
+        if (patrn.exec(value) == null || value == "") {
+          return false;
+        } else {
+          return true;
+        }
+      }
+      var val = this.value;
+      if (
+        approveWagonPlease.resultId==null||
+        approveWagonPlease.resultApproveDate==null||
+        approveWagonPlease.resultApproveNumber==null
+      ) 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.$router.go(-1);
+        });
+    },
+  },
+};
+</script>
+<style lang="scss" scoped>
+@import "@/styles/appoint/contract/ContractInsert.scss";
+</style>

+ 99 - 0
src/views/TMS/domesticMine/components/approveWagonPleaseEdit.vue

@@ -0,0 +1,99 @@
+<template>
+  <!-- 修改批车作业页面 -->
+  <div id="contractDetails">
+    <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="140" v-model="form1"></dil-form>
+        </div>
+      </div>
+    </div>  
+ 
+    <div class="button-box">
+      <el-button @click="onClickCancel">返回</el-button>
+      <el-button type="primary" @click="onClickConfirm">确认</el-button>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+export default {
+  components: { PageTitle },
+    data(){
+          return {
+          form1: {},
+        }
+    },
+  mounted() {
+    this.information();
+  },
+  methods: {
+    information() {
+      //编辑批车作业 渲染数据
+      this.$axios
+        .post("/api/v1/tms/getApproveWagonPleaseById/" + this.$route.params.resultId)
+        .then((res) => {
+          res.data.data.forEach((e) => {
+            this.form1 = e;
+          });
+        });
+    },
+     // 返回
+    onClickCancel() {
+      this.$router.go(-1);
+    },
+    // 确认
+    onClickConfirm() {
+      let approveWagonPlease = {
+        resultId: this.$route.params.resultId,
+        resultApproveDate: this.form1.resultApproveDate,
+        resultApproveNumber: this.form1.resultApproveNumber,
+        shipperId: this.form1.shipperId,
+        resultCategory: this.form1.resultCategory,
+        sendStationId: this.form1.sendStationId,
+        toTheStationId: this.form1.toTheStationId
+      };
+      function isNumber() {
+        var value = approveWagonPlease.resultApproveNumber;
+        //验证是否为数字
+        var patrn = /^(-)?\d+(\.\d+)?$/;
+        if (patrn.exec(value) == null || value == "") {
+          return false;
+        } else {
+          return true;
+        }
+      }
+      var val = this.value;
+      if (
+        approveWagonPlease.resultApproveDate==null||
+        approveWagonPlease.resultApproveNumber==null||
+        approveWagonPlease.shipperId==null||
+        approveWagonPlease.resultCategory==null||
+        approveWagonPlease.sendStationId==null||
+        approveWagonPlease.toTheStationId==null
+      ) this.$message.error("存在空值!");
+      else
+      if (!isNumber(val)) this.$message.error("请车数必须是数字!");
+      else
+      this.$axios
+        .post("/api/v1/tms/updateApproveWagonPlease", approveWagonPlease)
+        .then(() => {
+          this.$message({
+            type: "success",  
+            message: "修改成功!",
+          });
+          this.$router.go(-1);
+        });
+    },
+  },
+};
+</script>
+<style lang="scss" scoped>
+@import "@/styles/appoint/contract/ContractInsert.scss";
+</style>

+ 77 - 0
src/views/TMS/domesticMine/components/entrust.vue

@@ -0,0 +1,77 @@
+<template>
+  <!-- 计量委托 -->
+  <div class="homeworkPath">
+    <div class="top">
+      <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="btnclick(0)">
+        <i class="el-icon-s-promotion"></i>发送
+      </el-button>
+    </div>
+    <dilTable v-bind.sync="option" @selection-change="selectionChange">
+    </dilTable>
+  </div>
+</template>
+
+
+<script>
+export default {
+  data() {
+    return {
+      input: "",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/tms/getLoadResultToSendMC?apiId=58&resultType=3",
+        // 控制显示多选列
+        selectionType: "select",
+      },
+      selectionListMap: [],
+    };
+  },
+  methods: {
+    onclick() {
+      this.option.requestUrl =
+        "/api/v1/tms/getLoadResultToSendMC?apiId=209&resultType=1&con=" +
+        this.input;
+    },
+    btnclick() {
+      if (this.selectionListMap.length == 0) {
+        this.$message({
+          message: "请勾选要发送计量委托的实绩!",
+          type: "warning",
+        });
+      } else {
+        this.$axios
+          .post("/api/v1/tms/batchSendMeasureCommission", {
+            resultIdList: this.selectionListMap,
+          })
+          .then((res) => {
+            if (res.data.code == "200") {
+              this.$message({
+                type: "success",
+                message: "发送成功",
+              });
+              this.option.requestUrl =
+                "/api/v1/tms/getLoadResultToSendMC?apiId=209&resultType=3";
+            }
+          });
+      }
+    },
+    selectionChange(selection) {
+      this.selectionListMap = [];
+      selection.forEach((element) => {
+        this.selectionListMap.push(element.resultId);
+      });
+    },
+  },
+};
+</script>
+<style lang='scss'>
+.homeworkPath {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 100 - 0
src/views/TMS/domesticMine/components/wagonLoad.vue

@@ -0,0 +1,100 @@
+<template>
+  <!-- 装车作业页面 -->
+  <div class="homeworkPath">
+    <div class="top">
+      <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="btnclick(0)">
+        <i class="el-icon-plus"></i>新增
+      </el-button>
+      <el-button type="primary" @click="btnclick(1)">
+        <i class="el-icon-edit-outline"></i>补录
+      </el-button>
+    </div>
+
+    <dilTable v-bind.sync="option">
+      <el-table-column fixed="right" label="操作" width="100">
+        <template slot-scope="scope">
+          <el-button @click="click(scope.row.resultId)" type="text" size="small"
+            >修改</el-button
+          >
+          <el-button
+            type="text"
+            size="small"
+            @click="deleteclick(scope.row.resultId)"
+            >删除</el-button
+          >
+        </template>
+      </el-table-column>
+    </dilTable>
+  </div>
+</template>
+<script>
+export default {
+  name: "wagonload",
+  data() {
+    return {
+      input: "",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/tms/getTmstrainWagonLoad?apiId=209&resultType=3",
+      },
+    };
+  },
+  methods: {
+    onclick() {
+      this.option.requestUrl =
+        "/api/v1/tms/getTmstrainWagonLoad?apiId=209&resultType=3&con=" +
+        this.input;
+    },
+    btnclick(index) {
+      if(index == 0){
+        this.$router.push("/domesticMine/wagonLoadAdd");
+      }else if(index == 1){
+        this.$router.push("/domesticMine/wagonLoadbu");
+      }
+    },
+    click(resultId) {
+      this.$router.push("/domesticMine/wagonLoadEdit/" + resultId);
+    },
+    deleteclick(scope) {
+      let resultId = scope;
+      this.$confirm("是否删除", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+        center: true,
+      })
+        .then(() => {
+          this.$message({
+            type: "success",
+            message: "删除成功!",
+          });
+          this.$axios
+            .post(
+              "/api/v1/tms/deleteTmstrainLoadingResultByResultId?resultId=" +
+                resultId
+            )
+            .then(() => {
+              this.$router.go(0);
+            });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "取消删除!",
+          });
+        });
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+.homeworkPath {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 435 - 0
src/views/TMS/domesticMine/components/wagonLoadAdd.vue

@@ -0,0 +1,435 @@
+<template>
+  <!-- 添加车皮装车实绩 -->
+  <div class="addWagonLoad">
+    <page-title>新增</page-title>
+    <el-divider content-position="left">车皮装车实绩</el-divider>
+    <div class="cp">
+      <span>车皮号:</span>
+      <el-input
+        placeholder="请输入内容"
+        v-model="input"
+        @change="onchang"
+        clearable
+      >
+      </el-input>
+    </div>
+    <div class="cpList">
+      <div class="list">
+        <span class="cpList1" v-for="(item, i) in list" :key="i">
+          {{ item }}
+          <i class="el-icon-close itu" @click="onclick(i)"></i>
+        </span>
+      </div>
+    </div>
+
+    <div class="material from">
+      <span class="text">物资:</span>
+      <el-input v-model="materialName" disabled> </el-input>
+      <el-button type="primary" @click="ondrawer(1)">浏览</el-button>
+    </div>
+
+    <div class="forwardingUnit from">
+      <span class="text">发货单位:</span>
+      <el-input v-model="supplierName" disabled> </el-input>
+      <el-button type="primary" @click="ondrawer(2)">浏览</el-button>
+    </div>
+    <div class="remark from">
+      <span class="text">船名:</span>
+      <el-input v-model="remark" @blur="onBlur"> </el-input>
+      <span class="span"></span>
+    </div>
+    <div class="forwardingUnit from">
+      <span class="text">卸货点:</span>
+      <el-input v-model="unloadPointName" disabled> </el-input>
+      <el-button type="primary" @click="ondrawer(4)">浏览</el-button>
+    </div>
+    <div class="form">
+      <div class="form-box" style="margin-right: 10rem">
+        <dil-form :formId="254" v-model="form1" ref="from1"></dil-form>
+      </div>
+    </div>
+    <div class="button-box">
+      <el-button @click="cancel">取消</el-button>
+      <el-button type="primary" @click="makeSure">确定</el-button>
+    </div>
+    <!-- 模态窗口 -->
+    <el-drawer :visible.sync="drawer" :direction="direction" size="30%">
+      <el-input
+        placeholder="请输入内容"
+        v-model="inputText"
+        style="margin-top: 0.625rem; margin-left: 1.25rem"
+        clearable
+      ></el-input>
+      <el-button
+        type="primary"
+        class="btn"
+        @click="onClick(a)"
+        style="margin-bottom: 0.9375rem"
+      >
+        <i class="el-icon-search"></i>查询
+      </el-button>
+      <div v-show="a == 1">
+        <dilTable
+          v-bind.sync="frist"
+          @radio-change="currentRadioChange1"
+        ></dilTable>
+      </div>
+      <div v-show="a == 2">
+        <dilTable
+          v-bind.sync="secend"
+          @radio-change="currentRadioChange2"
+        ></dilTable>
+      </div>
+      <div v-show="a == 4">
+        <dilTable
+          v-bind.sync="unloadPoint"
+          @radio-change="currentRadioChange4"
+        ></dilTable>
+      </div>
+    </el-drawer>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      list: [],
+      form1: {},
+      input: "",
+      value: undefined,
+      //船名
+      remark: null,
+      //采购订单id
+      purchaseOrderId: null,
+      //物资名称
+      materialName: null,
+      //发货单位名称
+      supplierName: null,
+      //发货单位id
+      supplierId: null,
+      //物资id
+      materialId: null,
+      //是否需要打开模态窗口
+      drawer: false,
+      //卸货点id
+      unloadPointId: null,
+      //卸货点名称
+      unloadPointName: null,
+      a: 1,
+      direction: "rtl",
+      inputText: "",
+      frist: {
+        requestUrl: "/api/v1/uc/queryAPOMaterialByLike?apiId=244&startNum=050",
+        selectionType: "radio",
+        mapList1: [],
+      },
+      secend: {
+        requestUrl:
+          "/api/v1/uc/getSupplierMesByMaterialId?apiId=247&materialId=",
+        selectionType: "radio",
+        mapList2: [],
+      },
+      unloadPoint: {
+        requestUrl: "/api/v1/uc/getUnloadingMesByLike?apiId=374",
+        selectionType: "radio",
+      },
+    };
+  },
+  created() {
+    this.form1 = {
+      arrivalStationId: 2,
+    };
+  },
+  methods: {
+    currentRadioChange1(selection) {
+      this.input = null;
+      this.materialName = selection.materialName;
+      this.materialId = selection.materialId;
+      this.getPurchaseOrderNo();
+    },
+    currentRadioChange2(selection) {
+      this.supplierName = selection.supplierName;
+      this.supplierId = selection.supplierId;
+      this.getPurchaseOrderNo();
+    },
+    currentRadioChange4(selection) {
+      this.unloadPointId = selection.warehouseId;
+      this.unloadPointName = selection.warehouseName;
+    },
+    ondrawer(num) {
+      this.drawer = true;
+      this.a = num;
+      if (num == 2) {
+        this.secend.requestUrl =
+          "/api/v1/uc/getSupplierMesByMaterialId?apiId=247&materialId=" +
+          this.materialId;
+      }
+    },
+    onBlur() {
+      this.getPurchaseOrderNo();
+    },
+    getPurchaseOrderNo() {
+      let map = {
+        materialId: this.materialId,
+        supplierId: this.supplierId,
+      };
+      if (this.remark) {
+        map.remark = this.remark;
+      }
+      console.log(this.map);
+      if (this.materialId && this.supplierId) {
+        this.$axios.post("/api/v1/oms/selectNewOrderId", map).then((res) => {
+          console.log(res);
+          if (res.data.code == "200") {
+            if (res.data.data == null) {
+              this.$message({
+                message: "没有匹配的采购订单号!",
+                type: "warning",
+              });
+              this.form1 = [];
+            } else {
+              this.remark = res.data.data.remark;
+              this.purchaseOrderId = res.data.data.purchaseOrderId;
+              this.form1 = { purchaseOrderNo: res.data.data.purchaseOrderNo };
+            }
+          } else {
+            this.$message.error("请求失败");
+          }
+        });
+      }
+    },
+    onClick(a) {
+      if (a == 1) {
+        this.frist.requestUrl =
+          "/api/v1/uc/queryAPOMaterialByLike?apiId=244&startNum=050&index=" +
+          this.inputText;
+      } else if (a == 2) {
+        this.secend.requestUrl =
+          "/api/v1/uc/getSupplierMesByMaterialId?apiId=247&materialId=" +
+          this.materialId +
+          "&index=" +
+          this.inputText;
+      } else if (a == 4) {
+        this.unloadPoint.requestUrl =
+          "/api/v1/uc/getUnloadingMesByLike?apiId=374&index=" + this.inputText;
+      }
+    },
+    onchang() {
+      var state = false;
+      var cptop = this.input.substring(0, 2);
+      var cptop1 = this.input.substring(0, 3);
+      if (
+        cptop == "45" ||
+        cptop == "46" ||
+        cptop == "42" ||
+        cptop == "47" ||
+        cptop == "15" ||
+        cptop == "16" ||
+        cptop == "17" ||
+        cptop == "18"
+      ) {
+        state = true;
+      } else if (
+        cptop1 == "140" ||
+        cptop1 == "141" ||
+        cptop1 == "142" ||
+        cptop1 == "143" ||
+        cptop1 == "145"
+      ) {
+        state = true;
+      } else {
+        this.$message({
+          type: "warning",
+          message: "车皮号格式不对,请重新输入!",
+        });
+      }
+      if (state) {
+        if (this.input.length == 7) {
+          this.list.push(this.input);
+          this.input = "";
+        } else {
+          this.$message({
+            type: "warning",
+            message: "车皮号长度不足7位数,请重新输入!",
+          });
+        }
+      }
+    },
+    onclick(index) {
+      this.list.splice(index, 1);
+    },
+    // 确定
+    makeSure() {
+      let state = 0;
+      if (
+        this.list.length > 0 &&
+        this.form1.resultClass &&
+        this.form1.sendStationId &&
+        this.form1.arrivalStationId &&
+        this.form1.resultLoadingDate
+      ) {
+        state = 1;
+      } else {
+        console.log(this.list.length);
+        if (this.list.length == 0) {
+          this.$message({
+            type: "warning",
+            message: "请输入车皮号!",
+          });
+        } else {
+          if (this.form1.resultClass) {
+            if (this.form1.sendStationId) {
+              if (this.form1.arrivalStationId) {
+                if (this.form1.resultLoadingDate) {
+                } else {
+                  this.$message({
+                    type: "warning",
+                    message: "请选择装车时间!",
+                  });
+                }
+              } else {
+                this.$message({
+                  type: "warning",
+                  message: "请选择到站!",
+                });
+              }
+            } else {
+              this.$message({
+                type: "warning",
+                message: "请选择发站!",
+              });
+            }
+          } else {
+            this.$message({
+              type: "warning",
+              message: "请选择班别!",
+            });
+          }
+        }
+      }
+      if (state == 1) {
+        let map = {
+          wagonNoList: this.list,
+          unloadPointId: this.unloadPointId,
+          purchaseOrderRailPlanId: this.purchaseOrderId,
+          resultClass: this.form1.resultClass,
+          sendStationId: this.form1.sendStationId,
+          arrivalStationId: this.form1.arrivalStationId,
+          resultLoadingDate: sjTime(this.form1.resultLoadingDate),
+          resultRemarks: this.form1.resultRemarks,
+          resultType: 3,
+        };
+        this.$axios
+          .post("/api/v1/tms/addDomesticLoadResult", map)
+          .then((res) => {
+            console.log(res);
+            if (res.data.code == "200") {
+              this.$message({
+                type: "success",
+                message: "新增成功",
+              });
+              this.$router.push("/domesticMine/wagonLoad");
+            }
+          });
+      }
+    },
+    // 取消
+    cancel() {
+      this.$router.go(-1);
+    },
+  },
+};
+</script>
+<style lang='scss'>
+.addWagonLoad {
+  .cp {
+    width: 100%;
+    display: flex;
+    justify-content: center;
+    align-items: center;
+    padding-top: 0.625rem;
+    padding-bottom: 0.625rem;
+    .cp_title {
+      .cp_top {
+        width: 3.125rem;
+        padding-right: 1.25rem;
+      }
+    }
+  }
+  .cpList {
+    display: flex;
+    justify-content: center;
+    width: 100%;
+    height: 10rem;
+    .list {
+      width: 45%;
+      border: #000 0.0625rem solid;
+      padding: 0.625rem;
+      display: flex;
+      flex-wrap: wrap;
+      .cpList1 {
+        background-color: #c9c7c7;
+        height: 1.875rem;
+        margin-right: 0.5rem;
+        padding: 0.625rem;
+        display: flex;
+        align-items: center;
+        justify-content: center;
+        position: relative;
+        .itu {
+          position: absolute;
+          top: -0.125rem;
+          right: 0.0625rem;
+          width: 0.625rem;
+          height: 0.625rem;
+        }
+      }
+    }
+  }
+  .material {
+    display: flex;
+    justify-content: center;
+    align-items: center;
+    height: 3.75rem;
+    .text {
+      text-align: right;
+      width: 8.125rem;
+    }
+  }
+  .forwardingUnit {
+    display: flex;
+    justify-content: center;
+    align-items: center;
+    height: 3.75rem;
+    .text {
+      text-align: right;
+      width: 8.125rem;
+    }
+  }
+  .remark {
+    display: flex;
+    justify-content: center;
+    align-items: center;
+    height: 3.75rem;
+    .text {
+      text-align: right;
+      width: 60px;
+    }
+  }
+  .form {
+    margin-top: 1.25rem;
+    display: flex;
+    justify-content: center;
+    padding-left: 9.375rem;
+  }
+  .button-box {
+    display: flex;
+    justify-content: center;
+  }
+}
+</style>
+

+ 103 - 0
src/views/TMS/domesticMine/components/wagonLoadEdit.vue

@@ -0,0 +1,103 @@
+<template>
+  <!-- 修改车皮装车实绩 -->
+  <div id="contractDetails">
+    <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="254" 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>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+ data(){
+     return {
+      form1: {},
+  }
+ },
+  mounted() {
+    this.information();
+  },
+  methods: {
+    information() {
+      //编辑车皮装车作业
+      this.$axios
+        .post("/api/v1/tms/getTmstrainLoadingResultByResultId/" + this.$route.params.resultId)
+        .then((res) => {
+          res.data.data.forEach((e) => {
+            this.form1 = e;
+            console.log(e);
+            console.log(this.form1);
+            console.log(this.$route.params.resultId);
+          });
+        });
+    },
+    handleCheckedCitiesChange(value) {
+      console.log(value);
+    },
+    // 返回
+    onClickCancel() {
+      this.$router.go(-1);
+    },
+    currentRadioChange(row) {
+      this.aaaa = row;
+    },
+    // 确认
+    onClickConfirm() {
+      let tmstrainLoadingResult = {
+        resultId: this.$route.params.resultId,
+        resultWagonNo: this.form1.resultWagonNo,
+        resultBillableTonnage: this.form1.resultBillableTonnage,
+        resultClass: this.form1.resultClass,
+        sendStationId: this.form1.sendStationId,
+        arrivalStationId: this.form1.arrivalStationId,
+        resultLoadingDate: sjTime(this.form1.resultLoadingDate),
+        batchId: this.form1.batchId,
+        capacityId: this.form1.capacityId,
+        resultMaterialNumber: this.form1.resultMaterialNumber,
+        resultMaterialTheoryweight: this.form1.resultMaterialTheoryweight,
+        resultRemarks: this.form1.resultRemarks
+      };
+      if (
+      tmstrainLoadingResult.resultWagonNo==null||
+      tmstrainLoadingResult.resultBillableTonnage==null||
+      tmstrainLoadingResult.resultClass==null||
+      tmstrainLoadingResult.sendStationId==null||
+      tmstrainLoadingResult.arrivalStationId==null||
+      tmstrainLoadingResult.resultLoadingDate==null||
+      tmstrainLoadingResult.batchId==null
+      ) this.$message.error("必填项存在空值!");
+      else
+      this.$axios
+        .post("/api/v1/tms/upadteTmstrainLoadingResultByResultId",
+          tmstrainLoadingResult)
+         .then(() => {
+          this.$message({
+            type: "success",  
+            message: "修改成功!",
+          });
+          this.$router.go(-1);
+        });
+    },
+  },
+};
+</script>
+<style lang="scss" scoped>
+@import "@/styles/TMS/addwagonload.scss";
+</style>

+ 290 - 0
src/views/TMS/domesticMine/components/wagonLoadbu.vue

@@ -0,0 +1,290 @@
+<template>
+  <div class="wagonLoadbu">
+    <el-divider content-position="left">选择需要补录的装车信息</el-divider>
+    <div class="wagonLoadbu_table">
+      <dilTable
+        v-bind.sync="option"
+        @selection-change="selectionChange"
+      ></dilTable>
+    </div>
+
+    <div class="material from">
+      <span class="text">物资:</span>
+      <el-input v-model="materialName" disabled> </el-input>
+      <el-button type="primary" @click="ondrawer(1)">浏览</el-button>
+    </div>
+
+    <div class="forwardingUnit from">
+      <span class="text">发货单位:</span>
+      <el-input v-model="supplierName" disabled> </el-input>
+      <el-button type="primary" @click="ondrawer(2)">浏览</el-button>
+    </div>
+    <div class="remark from">
+      <span class="text">船名:</span>
+      <el-input v-model="remark" @blur="onBlur"> </el-input>
+      <span class="span"></span>
+    </div>
+    <div class="forwardingUnit from">
+      <span class="text">卸货点:</span>
+      <el-input v-model="unloadPointName" disabled> </el-input>
+      <el-button type="primary" @click="ondrawer(4)">浏览</el-button>
+    </div>
+    <div class="form">
+      <dil-form :formId="361" 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>
+    <!-- 模态窗口 -->
+    <el-drawer :visible.sync="drawer" :direction="direction" size="30%">
+      <el-input
+        placeholder="请输入内容"
+        v-model="inputText"
+        style="margin-top: 10px; margin-left: 20px"
+        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="frist"
+          @radio-change="currentRadioChange1"
+        ></dilTable>
+      </div>
+      <div v-show="a == 2">
+        <dilTable
+          v-bind.sync="secend"
+          @radio-change="currentRadioChange2"
+        ></dilTable>
+      </div>
+      <div v-show="a == 4">
+        <dilTable
+          v-bind.sync="unloadPoint"
+          @radio-change="currentRadioChange4"
+        ></dilTable>
+      </div>
+    </el-drawer>
+  </div>
+</template>
+
+<script>
+export default {
+  data() {
+    return {
+      form1: {},
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/tms/getTmstrainWagonLoad?apiId=209&resultType=10",
+        // 控制显示多选列
+        selectionType: "select",
+      },
+      //多选选中的数据
+      selecTionListMap: [],
+      //船名
+      remark: null,
+      //采购订单id
+      purchaseOrderId: null,
+      //物资名称
+      materialName: null,
+      //发货单位名称
+      supplierName: null,
+      //发货单位id
+      supplierId: null,
+      //物资id
+      materialId: null,
+      //是否需要打开模态窗口
+      drawer: false,
+      //卸货点id
+      unloadPointId: null,
+      //卸货点名称
+      unloadPointName: null,
+      a: 1,
+      direction: "rtl",
+      inputText: "",
+      frist: {
+        requestUrl: "/api/v1/uc/queryAPOMaterialByLike?apiId=244&startNum=050",
+        selectionType: "radio",
+        mapList1: [],
+      },
+      secend: {
+        requestUrl:
+          "/api/v1/uc/getSupplierMesByMaterialId?apiId=247&materialId=",
+        selectionType: "radio",
+        mapList2: [],
+      },
+      unloadPoint: {
+        requestUrl: "/api/v1/uc/getUnloadingMesByLike?apiId=374",
+        selectionType: "radio",
+      },
+    };
+  },
+  methods: {
+    //确定
+    makeSure() {
+      if(this.selecTionListMap.length <= 0){
+        this.$message({
+          message: "请选择需要补录的装车信息!",
+          type: "warning",
+        });
+      }else{
+        let map = {
+          resultIdList:this.selecTionListMap,
+          unloadPointId:this.unloadPointId,
+          purchaseOrderId:this.purchaseOrderId,
+          insertUpdateRemark: this.form1.insertUpdateRemark
+        }
+        this.$axios.post('/api/v1/tms/updateDomesticLoadResult',map).then((res)=>{
+          console.log(res.data.data)
+          if(res.data.code == "200"){
+            this.$message({
+              message: "补录成功!",
+              type: "success",
+            });
+            this.cancel();
+          }
+        })
+      }
+      
+    },
+    //取消
+    cancel() {
+      this.$router.push("/domesticMine/wagonLoad");
+    },
+    //表格选中
+    selectionChange(selection) {
+      this.selecTionListMap = [];
+      selection.forEach(element => {
+          this.selecTionListMap.push(element.resultId)
+      });
+      console.log( this.selecTionListMap)
+    },
+    currentRadioChange1(selection) {
+      this.input = null;
+      this.materialName = selection.materialName;
+      this.materialId = selection.materialId;
+      this.getPurchaseOrderNo();
+    },
+    currentRadioChange2(selection) {
+      this.supplierName = selection.supplierName;
+      this.supplierId = selection.supplierId;
+      this.getPurchaseOrderNo();
+    },
+    currentRadioChange4(selection) {
+      this.unloadPointId = selection.warehouseId;
+      this.unloadPointName = selection.warehouseName;
+    },
+    ondrawer(num) {
+      this.drawer = true;
+      this.a = num;
+      if (num == 2) {
+        this.secend.requestUrl =
+          "/api/v1/uc/getSupplierMesByMaterialId?apiId=247&materialId=" +
+          this.materialId;
+      }
+    },
+    onBlur() {
+      this.getPurchaseOrderNo();
+    },
+    getPurchaseOrderNo() {
+      let map = {
+        materialId: this.materialId,
+        supplierId: this.supplierId,
+      };
+      if (this.remark) {
+        map.remark = this.remark;
+      }
+      console.log(this.map);
+      if (this.materialId && this.supplierId) {
+        this.$axios.post("/api/v1/oms/selectNewOrderId", map).then((res) => {
+          console.log(res);
+          if (res.data.code == "200") {
+            if (res.data.data == null) {
+              this.$message({
+                message: "没有匹配的采购订单号!",
+                type: "warning",
+              });
+              this.form1 = [];
+            } else {
+              this.remark = res.data.data.remark;
+              this.purchaseOrderId = res.data.data.purchaseOrderId;
+              this.form1 = { purchaseOrderNo: res.data.data.purchaseOrderNo };
+            }
+          } else {
+            this.$message.error("请求失败");
+          }
+        });
+      }
+    },
+    onClick(a) {
+      if (a == 1) {
+        this.frist.requestUrl =
+          "/api/v1/uc/queryAPOMaterialByLike?apiId=244&startNum=050&index=" +
+          this.inputText;
+      } else if (a == 2) {
+        this.secend.requestUrl =
+          "/api/v1/uc/getSupplierMesByMaterialId?apiId=247&materialId=" +
+          this.materialId +
+          "&index=" +
+          this.inputText;
+      } else if (a == 4) {
+        this.third.requestUrl =
+          "/api/v1/uc/getUnloadingMesByLike?apiId=347&index=" + this.inputText;
+      }
+    },
+  },
+};
+</script>
+
+<style lang="scss">
+.wagonLoadbu {
+  .material {
+    display: flex;
+    justify-content: center;
+    align-items: center;
+    height: 3.75rem;
+    .text {
+      text-align: right;
+      width: 150px;
+    }
+  }
+  .forwardingUnit {
+    display: flex;
+    justify-content: center;
+    align-items: center;
+    height: 3.75rem;
+    .text {
+      text-align: right;
+      width: 9.375rem;
+    }
+  }
+  .remark {
+    display: flex;
+    justify-content: center;
+    align-items: center;
+    height: 3.75rem;
+    .text {
+      text-align: right;
+      width: 80px;
+    }
+  }
+  .form {
+    margin-top: 1.25rem;
+    display: flex;
+    justify-content: center;
+  }
+  .button_box {
+    width: 100%;
+    height: 6.25rem;
+    display: flex;
+    justify-content: center;
+    align-items: center;
+  }
+}
+</style>

+ 151 - 0
src/views/TMS/domesticMine/components/wagonPlease.vue

@@ -0,0 +1,151 @@
+<template>
+  <!-- 请车作业页面 -->
+  <div class="homeworkPath">
+    <div class="top">
+      <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="insertClick">
+        <i class="el-icon-plus"></i>新增
+      </el-button>
+    </div>
+    <el-tabs v-model="activeName">
+      <!-- 未下发 -->
+      <el-tab-pane label="未下发" name="first">
+        <dilTable v-bind.sync="option1" ref="table">
+          <el-table-column fixed="right" label="操作" width="120">
+            <template slot-scope="scope">
+              <el-button
+                @click="updateClick(scope.row.resultId)"
+                type="text"
+                size="small"
+              >
+                修改
+              </el-button>
+              <el-button
+                @click="deleteClick(scope.row.resultId)"
+                type="text"
+                size="small"
+              >
+                删除
+              </el-button>
+              <el-button
+                @click="sendClick(scope.row.resultId)"
+                type="text"
+                size="small"
+              >
+                下发
+              </el-button>
+            </template>
+          </el-table-column>
+        </dilTable>
+      </el-tab-pane>
+      <!-- 已下发 -->
+      <el-tab-pane label="已下发" name="second">
+        <dilTable v-bind.sync="option2"> </dilTable>
+      </el-tab-pane>
+    </el-tabs>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "inplantTMS",
+  data() {
+    return {
+      input: "",
+      activeName: "first",
+      option1: {
+        // 表格请求数据的地址
+        requestUrl:
+          "/api/v1/tms/getAllWagonPlease?apiId=57&status=0&resultType=3",
+      },
+      option2: {
+        // 表格请求数据的地址
+        requestUrl:
+          "/api/v1/tms/getAllWagonPlease?apiId=57&status=1&resultType=3",
+      },
+    };
+  },
+  methods: {
+    onclick() {
+      if(this.activeName == "first"){
+        this.option1.requestUrl = "/api/v1/tms/getAllWagonPlease?apiId=57&status=0&resultType=3&con=" +this.input;
+      }else{
+        this.option2.requestUrl = "/api/v1/tms/getAllWagonPlease?apiId=57&status=1&resultType=3&con=" +this.input;
+      }
+    },
+    // 删除
+    deleteClick(resultId) {
+      this.$confirm("是否删除", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+        center: true,
+      })
+        .then(() => {
+          this.$message({
+            type: "success",
+            message: "删除成功!",
+          });
+          // console.log(this.arr[0].text_prop);
+          this.$axios
+            .post("/api/v1/tms/deleteApproveWagonPlease/" + resultId)
+            .then(() => {
+              this.$router.go(0);
+            });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "取消删除!",
+          });
+        });
+    },
+    // 下发
+    sendClick(resultId) {
+      this.$confirm("是否下发", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+        center: true,
+      })
+        .then(() => {
+          this.$message({
+            type: "success",
+            message: "下发成功!",
+          });
+          // console.log(this.arr[0].text_prop);
+          this.$axios
+            .post("/api/v1/tms/sendWagonPlease/" + resultId)
+            .then(() => {
+              this.$router.go(0);
+            });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "取消下发!",
+          });
+        });
+    },
+
+    //新增
+    insertClick() {
+      this.$router.push("/domesticMine/wagonPleaseAdd");
+    },
+    //修改
+    updateClick(resultId) {
+      this.$router.push("/domesticMine/wagonPleaseEdit/" + resultId);
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+.homeworkPath {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

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

@@ -0,0 +1,94 @@
+<template>
+  <!-- 新增请作业页面 -->
+  <div id="contractDetails">
+    <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="122" v-model="form1" ></dil-form>
+        </div>
+      </div>
+    </div>
+    <div class="button-box">
+      <el-button @click="onClickCancel">返回</el-button>
+      <el-button type="primary" @click="onClickConfirm" >确认</el-button>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      // 表单
+      form1: {},
+    };
+  },
+  mounted() {
+    // this.unit();
+  },
+  methods: {
+    handleCheckedCitiesChange(value) {
+      console.log(value);
+    },
+    
+    // 返回
+    onClickCancel() {
+      this.$router.go(-1);
+    },
+     // 确认
+    onClickConfirm() {
+      let tmstrainPleaseApproveResult = {
+        resultPlanDate: sjTime(this.form1.resultPlanDate),
+        resultCategory: this.form1.resultCategory,
+        shipperId: this.form1.shipperId,
+        sendStationId: this.form1.sendStationId,
+        toTheStationId: this.form1.toTheStationId,
+        resultPleaseNumber: this.form1.resultPleaseNumber,
+        resultType: 3
+      };
+      function isNumber() {
+        var value = tmstrainPleaseApproveResult.resultPleaseNumber;
+        //验证是否为数字
+        var patrn = /^(-)?\d+(\.\d+)?$/;
+        if (patrn.exec(value) == null || value == "") {
+          return false;
+        } else {
+          return true;
+        }
+      }
+      var val = this.value;
+      if (
+        tmstrainPleaseApproveResult.resultPlanDate==null||
+        tmstrainPleaseApproveResult.resultCategory==null||
+        tmstrainPleaseApproveResult.shipperId==null||
+        tmstrainPleaseApproveResult.sendStationId==null||
+        tmstrainPleaseApproveResult.toTheStationId==null||
+        tmstrainPleaseApproveResult.resultPleaseNumber==null
+      ) this.$message.error("存在空值!");
+      else
+      if (!isNumber(val)) this.$message.error("请车数量必须是数字!");
+      else
+      this.$axios
+        .post("/api/v1/tms/addWagonPlease", tmstrainPleaseApproveResult)
+        .then(() => {
+          this.$message({
+            type: "success",  
+            message: "新增成功!",
+          });
+          this.$router.go(-1);
+        });
+    },
+  },
+};
+</script>
+<style lang="scss" scoped>
+@import "@/styles/appoint/contract/ContractInsert.scss";
+</style>

+ 100 - 0
src/views/TMS/domesticMine/components/wagonPleaseEdit.vue

@@ -0,0 +1,100 @@
+<template>
+  <!-- 修改请车作业页面 -->
+  <div id="contractDetails">
+    <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="117" v-model="form1"></dil-form>
+        </div>
+      </div>
+    </div>  
+ 
+    <div class="button-box">
+      <el-button @click="onClickCancel">返回</el-button>
+      <el-button type="primary" @click="onClickConfirm">确认</el-button>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+    data(){
+          return {
+          form1: {},
+        }
+    },
+  mounted() {
+    this.information();
+  },
+  methods: {
+    information() {
+      //编辑请车作业
+      this.$axios
+        .post("/api/v1/tms/getWagonPleaseById/" + this.$route.params.resultId)
+        .then((res) => {
+          res.data.data.forEach((e) => {
+            this.form1 = e;
+          });
+        });
+    },
+     // 返回
+    onClickCancel() {
+      this.$router.go(-1);
+    },
+     // 确认
+    onClickConfirm() {
+      let tmstrainPleaseApproveResult = {
+        resultId: this.$route.params.resultId,
+        resultPlanDate: sjTime(this.form1.resultPlanDate),
+        resultCategory: this.form1.resultCategory,
+        shipperId: this.form1.shipperId,
+        sendStationId: this.form1.sendStationId,
+        toTheStationId: this.form1.toTheStationId,
+        resultPleaseNumber: this.form1.resultPleaseNumber
+      };
+      function isNumber() {
+        var value = tmstrainPleaseApproveResult.resultPleaseNumber;
+        //验证是否为数字
+        var patrn = /^(-)?\d+(\.\d+)?$/;
+        if (patrn.exec(value) == null || value == "") {
+          return false;
+        } else {
+          return true;
+        }
+      }
+      var val = this.value;
+      if (
+        tmstrainPleaseApproveResult.resultPlanDate==null||
+        tmstrainPleaseApproveResult.resultCategory==null||
+        tmstrainPleaseApproveResult.shipperId==null||
+        tmstrainPleaseApproveResult.sendStationId==null||
+        tmstrainPleaseApproveResult.toTheStationId==null||
+        tmstrainPleaseApproveResult.resultPleaseNumber==null
+      ) this.$message.error("存在空值!");
+      else
+      if (!isNumber(val)) this.$message.error("请车数必须是数字!");
+      else
+      this.$axios
+        .post("/api/v1/tms/updateApproveWagonPlease", tmstrainPleaseApproveResult)
+        .then(() => {
+          this.$message({
+            type: "success",  
+            message: "修改成功!",
+          });
+          this.$router.go(-1);
+        });
+    },
+  },
+};
+</script>
+<style lang="scss" scoped>
+@import "@/styles/appoint/contract/ContractInsert.scss";
+</style>

+ 92 - 0
src/views/TMS/domesticMine/components/wagonUnLoad.vue

@@ -0,0 +1,92 @@
+<template>
+  <!-- 卸车作业页面 -->
+  <div class="homeworkPath">
+    <div class="top">
+       <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="btnclick(0)">
+        <i class="el-icon-plus"></i>新增
+      </el-button>
+    </div>
+    
+    <dilTable v-bind.sync="option">
+      <el-table-column fixed="right" label="操作" width="100">
+        <template slot-scope="scope">
+          <el-button @click="click(scope.row.unloadingId)" type="text" size="small"
+            >修改</el-button
+          >
+          <el-button
+            type="text"
+            size="small"
+            @click="deleteclick(scope.row.unloadingId)"
+            >删除</el-button
+          >
+        </template>
+      </el-table-column>
+    </dilTable>
+  </div>
+</template>
+
+
+<script>
+export default {
+  name: "wagonUnload",
+  data() {
+    return {
+      input: "",
+      option: {       
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/tms/getTmstrainWagonUnLoad?apiId=214&resultType=3",
+      },
+    };
+  },
+  methods: {
+    onclick() {
+      this.option.requestUrl = "/api/v1/tms/getTmstrainWagonUnLoad?apiId=60&resultType=3&con="+this.input;
+    },
+    btnclick() {
+      this.$router.push("/domesticMine/wagonUnLoadAdd");
+    },
+    click(unloadingId) {
+      this.$router.push("/domesticMine/wagonUnLoadEdit/" + unloadingId);
+    },
+    deleteclick(scope) {
+      let unloadingId = scope;
+      this.$confirm("是否删除", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+        center: true,
+      })
+        .then(() => {
+          this.$message({
+            type: "success",
+            message: "删除成功!",
+          });
+          this.$axios
+            .post(
+             "/api/v1/tms/deleteTmstrainWagonUnLoadResultByUnLoadingId?unloadingId=" + unloadingId
+            )
+            .then(() => {
+               this.$router.go(0);
+            });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "取消删除!",
+          });
+        });
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+.homeworkPath {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 100 - 0
src/views/TMS/domesticMine/components/wagonUnLoadAdd.vue

@@ -0,0 +1,100 @@
+<template>
+  <!-- 添加车皮卸车实绩 -->
+  <div class="addWagonLoad">
+    <page-title>新增</page-title>
+    <div class="main">
+      <el-divider content-position="left">选择已装车实绩</el-divider>
+    </div>
+    <div>
+      <dilTable
+        v-bind.sync="option"
+        ref="table"
+        @selection-change="selectionChange"
+      >
+      </dilTable>
+    </div>
+    <el-divider content-position="left">车皮卸车实绩</el-divider>
+    <div class="form-box" style="margin-right: 10rem">
+      <dil-form :formId="255" 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>
+</template>
+<script>
+import PageTitle from "@/components/Page/Title";
+import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      form1: {},
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/tms/getWagonNo/3?apiId=213",
+        // 控制显示当选列
+        selectionType: "select",
+      },
+      value: undefined,
+      list: [],
+    };
+  },
+  mounted() {},
+  methods: {
+    selectionChange(selection) {
+      this.list = [];
+      selection.forEach((e) => {
+        this.list.push({
+          resultWagonNo: e.resultWagonNo,
+          resultId: e.resultId,
+        });
+      });
+    },
+    // 确定
+    makeSure() {
+      let tmstrainWagonUnloadResult = {
+        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: 3,
+      };
+      console.log(tmstrainWagonUnloadResult);
+      if (
+        tmstrainWagonUnloadResult.wagonNoList == null ||
+        tmstrainWagonUnloadResult.resultArrivalDate == null ||
+        tmstrainWagonUnloadResult.resultUnloadTime == null ||
+        tmstrainWagonUnloadResult.unloadingPointId == null ||
+        tmstrainWagonUnloadResult.resultBigTicketWeight == null ||
+        tmstrainWagonUnloadResult.resultRailHorizontalWeight == null
+      )
+        this.$message.error("存在空值!");
+      else
+        this.$axios
+          .post(
+            "/api/v1/tms/insertTmstrainWagonUnLoadResult",
+            tmstrainWagonUnloadResult
+          )
+          .then(() => {
+            this.$message({
+              type: "success",
+              message: "新增成功!",
+            });
+            this.$router.go(-1);
+          });
+    },
+    // 取消
+    cancel() {
+      this.$router.go(-1);
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+@import "@/styles/TMS/addWagonUnLoed.scss";
+</style>

+ 99 - 0
src/views/TMS/domesticMine/components/wagonUnLoadEdit.vue

@@ -0,0 +1,99 @@
+<template>
+  <!-- 修改车皮装车实绩 -->
+  <div id="contractDetails">
+    <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="118" 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>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+ data(){
+     return {
+      form1: {},
+  }
+ },
+  mounted() {
+    this.information();
+  },
+  methods: {
+    information() {
+      //编辑车皮装车作业
+      this.$axios
+        .post("/api/v1/tms/getTmstrainWagonUnLoadResultByUnLoadingId/" + this.$route.params.unloadingId)
+        .then((res) => {
+          res.data.data.forEach((e) => {
+            this.form1 = e;
+            console.log(e);
+            console.log(this.form1);
+            console.log(this.$route.params.unloadingId);
+          });
+        });
+    },
+    handleCheckedCitiesChange(value) {
+      console.log(value);
+    },
+    // 返回
+    onClickCancel() {
+      this.$router.go(-1);
+    },
+    currentRadioChange(row) {
+      this.aaaa = row;
+    },
+    //确定
+    onClickConfirm() {
+      let tmstrainWagonUnloadResult = {
+        unloadingId: this.$route.params.unloadingId,
+        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
+      };
+      console.log(tmstrainWagonUnloadResult);
+      if (
+        tmstrainWagonUnloadResult.resultArrivalDate==null||
+      tmstrainWagonUnloadResult.resultUnloadTime==null||
+      tmstrainWagonUnloadResult.unloadingPointId==null||
+      tmstrainWagonUnloadResult.resultBigTicketWeight==null||
+      tmstrainWagonUnloadResult.resultRailHorizontalWeight==null
+      ) this.$message.error("存在空值!");
+      else
+      this.$axios
+        .post(
+          "/api/v1/tms/upadteTmstrainWagonUnLoadResultByUnLoadingId",
+          tmstrainWagonUnloadResult
+        )
+        .then(() => {
+          this.$message({
+            type: "success",  
+            message: "修改成功!",
+          });
+          this.$router.go(-1);
+        });
+    },
+  },
+};
+</script>
+<style lang="scss" scoped>
+@import "@/styles/TMS/addwagonload.scss";
+</style>

+ 75 - 0
src/views/TMS/download/index.vue

@@ -0,0 +1,75 @@
+<template>
+     <div class="content" v-bind:style="{backgroundImage:'url(' + bg + ')'}" iud="body">
+        <img v-show="show_wx" :src="wx"   width="100%"  /> 
+        <img  :src="logo" style="margin:100px auto auto 150px;text-align:center; height:100px; width:85px;"  /> 
+        <img   style="margin:100px auto auto 110px; height:50px; width:220;"  :src="btn" id="btn_img" @click="download()"/>
+    </div> 
+</template>
+<script>
+export default {
+    data() {
+        return {
+            type : "android",
+            logo:require('@/assets/img/logoApp.png'),
+            wx:require('@/assets/img/image.png'),
+            btn:require('@/assets/img/down.png'),
+            show_wx :false,
+             bg: require('@/assets/homepageimg/backgroud.jpg'),
+        };
+    },
+    created() {
+        let ua = navigator.userAgent.toLowerCase();
+        if (/iphone|ipad|ipod/.test(ua)) {
+            this.type = "ios";
+
+        } else if (/android/.test(ua)) {
+            this.type = "android";
+        }
+
+        if(isWeixinBrowser()){
+            this.show_wx = true;
+        }
+        function isWeixinBrowser() {
+            return (/micromessenger/.test(ua)) ? true : false;
+        }
+    },
+
+    methods: {
+
+        download() {
+
+            const that = this;
+
+            if(that.type == 'android') {
+                window.location.href = 'https://wl.dasteel.cn:32322/%E6%95%B0%E8%A3%81%E7%89%A9%E6%B5%81.apk';
+
+            } else {
+
+                window.location.href = 'IOS下载地址';
+
+            }
+
+        },
+
+    }
+
+};
+
+</script>
+<style>
+    .content {
+        position:relative;
+        margin:0px auto;
+        background-size: cover;
+        width: 100%;
+        height: 100%;
+ }
+
+
+
+
+div img:first-of-type { 
+    position: absolute; 
+   
+} 
+</style>

+ 466 - 0
src/views/TMS/importedEmergency/addWagonLoad.vue

@@ -0,0 +1,466 @@
+<template>
+  <!-- 添加车皮装车实绩 -->
+  <div class="addWagonLoad">
+    <page-title>新增</page-title>
+    <el-divider content-position="left">车皮装车实绩</el-divider>
+    <div class="cp">
+      <span>车皮号:</span>
+      <el-input
+        placeholder="请输入内容"
+        v-model="input"
+        @change="onchang"
+        clearable
+      >
+      </el-input>
+    </div>
+    <div class="cpList">
+      <div class="list">
+        <span class="cpList1" v-for="(item, i) in list" :key="i">
+          {{ item }}
+          <i class="el-icon-close itu" @click="onclick(i)"></i>
+        </span>
+      </div>
+    </div>
+
+    <div class="material from">
+      <span class="text">物资:</span>
+      <el-input v-model="materialName" disabled> </el-input>
+      <el-button type="primary" @click="ondrawer(1)">浏览</el-button>
+    </div>
+
+    <div class="forwardingUnit from">
+      <span class="text">发货单位:</span>
+      <el-input v-model="supplierName" disabled> </el-input>
+      <el-button type="primary" @click="ondrawer(2)">浏览</el-button>
+    </div>
+    <div class="remark from">
+      <span class="text">船名:</span>
+      <el-input v-model="remark" @blur="onBlur"> </el-input>
+      <span class="span"></span>
+    </div>
+    <div class="forwardingUnit from">
+      <span class="text">卸货点:</span>
+      <el-input v-model="unloadPointName" disabled> </el-input>
+      <el-button type="primary" @click="ondrawer(4)">浏览</el-button>
+    </div>
+    <div class="form">
+      <div class="form-box" style="margin-right: 10rem">
+        <dil-form :formId="254" v-model="form1" ref="from1"></dil-form>
+      </div>
+    </div>
+    <div class="button-box">
+      <el-button @click="cancel">取消</el-button>
+      <el-button type="primary" @click="makeSure">确定</el-button>
+    </div>
+    <!-- 模态窗口 -->
+    <el-drawer :visible.sync="drawer" :direction="direction" size="30%">
+      <el-input
+        placeholder="请输入内容"
+        v-model="inputText"
+        style="margin-top: 0.625rem; margin-left: 1.25rem"
+        clearable
+      ></el-input>
+      <el-button
+        type="primary"
+        class="btn"
+        @click="onClick(a)"
+        style="margin-bottom: 0.9375rem"
+      >
+        <i class="el-icon-search"></i>查询
+      </el-button>
+      <div v-show="a == 1">
+        <dilTable
+          v-bind.sync="frist"
+          @radio-change="currentRadioChange1"
+        ></dilTable>
+      </div>
+      <div v-show="a == 2">
+        <dilTable
+          v-bind.sync="secend"
+          @radio-change="currentRadioChange2"
+        ></dilTable>
+      </div>
+      <div v-show="a == 4">
+        <dilTable
+          v-bind.sync="unloadPoint"
+          @radio-change="currentRadioChange4"
+        ></dilTable>
+      </div>
+    </el-drawer>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      list: [],
+      form1: {},
+      input: "",
+      value: undefined,
+      //船名
+      remark: null,
+      //采购订单id
+      purchaseOrderId: null,
+      //物资名称
+      materialName: null,
+      //发货单位名称
+      supplierName: null,
+      //发货单位id
+      supplierId: null,
+      //物资id
+      materialId: null,
+      //是否需要打开模态窗口
+      drawer: false,
+      //卸货点id
+      unloadPointId: null,
+      //卸货点名称
+      unloadPointName: null,
+      a: 1,
+      direction: "rtl",
+      inputText: "",
+      frist: {
+        requestUrl: "/api/v1/uc/queryAPOMaterialByLike?apiId=244&startNum=050",
+        selectionType: "radio",
+        mapList1: [],
+      },
+      secend: {
+        requestUrl:
+          "/api/v1/uc/getSupplierMesByMaterialId?apiId=247&materialId=",
+        selectionType: "radio",
+        mapList2: [],
+      },
+      unloadPoint: {
+        requestUrl: "/api/v1/uc/getUnloadingMesByLike?apiId=374",
+        selectionType: "radio",
+      },
+    };
+  },
+  created(){
+    this.form1 = {
+      sendStationId:1,
+      arrivalStationId:2,
+    }
+  },
+  methods: {
+    currentRadioChange1(selection) {
+      this.input = null;
+      this.materialName = selection.materialName;
+      this.materialId = selection.materialId;
+      this.getPurchaseOrderNo();
+    },
+    currentRadioChange2(selection) {
+      this.supplierName = selection.supplierName;
+      this.supplierId = selection.supplierId;
+      this.getPurchaseOrderNo();
+    },
+    currentRadioChange4(selection) {
+      this.unloadPointId = selection.warehouseId;
+      this.unloadPointName = selection.warehouseName;
+    },
+    ondrawer(num) {
+      this.drawer = true;
+      this.a = num;
+      if (num == 2) {
+        this.secend.requestUrl =
+          "/api/v1/uc/getSupplierMesByMaterialId?apiId=247&materialId=" +
+          this.materialId;
+      }
+    },
+    onBlur() {
+      this.getPurchaseOrderNo();
+    },
+    getPurchaseOrderNo() {
+      let map = {
+        materialId: this.materialId,
+        supplierId: this.supplierId,
+      };
+      if (this.remark) {
+        map.remark = this.remark;
+      }
+      console.log(this.map);
+      if (this.materialId && this.supplierId) {
+        this.$axios.post("/api/v1/oms/selectNewOrderId", map).then((res) => {
+          console.log(res);
+          if (res.data.code == "200") {
+            if (res.data.data == null) {
+              this.$message({
+                message: "没有匹配的采购订单号!",
+                type: "warning",
+              });
+              this.form1 = [];
+            } else {
+              this.remark = res.data.data.remark;
+              this.purchaseOrderId = res.data.data.purchaseOrderId;
+              this.form1 = { purchaseOrderNo: res.data.data.purchaseOrderNo };
+            }
+          } else {
+            this.$message.error("请求失败");
+          }
+        });
+      }
+    },
+    onClick(a) {
+      if (a == 1) {
+        this.frist.requestUrl =
+          "/api/v1/uc/queryAPOMaterialByLike?apiId=244&startNum=050&index=" +
+          this.inputText;
+      } else if (a == 2) {
+        this.secend.requestUrl =
+          "/api/v1/uc/getSupplierMesByMaterialId?apiId=247&materialId=" +
+          this.materialId +
+          "&index=" +
+          this.inputText;
+      } else if (a == 4) {
+        this.unloadPoint.requestUrl =
+          "/api/v1/uc/getUnloadingMesByLike?apiId=374&index=" + this.inputText;
+      }
+    },
+    onchang() {
+      var state = false;
+      var cptop = this.input.substring(0, 2);
+      var cptop1 = this.input.substring(0, 3);
+      if (
+        cptop == "45" ||
+        cptop == "46" ||
+        cptop == "42" ||
+        cptop == "47" ||
+        cptop == "15" ||
+        cptop == "16" ||
+        cptop == "17" ||
+        cptop == "18"
+      ) {
+        state = true;
+      } else if (
+        cptop1 == "140" ||
+        cptop1 == "141" ||
+        cptop1 == "142" ||
+        cptop1 == "143" ||
+        cptop1 == "145"
+      ) {
+        state = true;
+      } else {
+        this.$message({
+          type: "warning",
+          message: "车皮号格式不对,请重新输入!",
+        });
+      }
+      if (state) {
+        if (this.input.length == 7) {
+          this.list.push(this.input);
+          this.input = "";
+        } else {
+          this.$message({
+            type: "warning",
+            message: "车皮号长度不足7位数,请重新输入!",
+          });
+        }
+      }
+    },
+    onclick(index) {
+      this.list.splice(index, 1);
+    },
+    // 确定
+    makeSure() {
+      let state = 0;
+      if (
+        this.list.length > 0 &&
+        this.materialId &&
+        this.supplierId &&
+        this.unloadPointId &&
+        this.purchaseOrderId &&
+        this.form1.resultClass &&
+        this.form1.sendStationId &&
+        this.form1.arrivalStationId &&
+        this.form1.resultLoadingDate
+      ) {
+        state = 1;
+      } else {
+        console.log(this.list.length);
+        if (this.list.length == 0) {
+          this.$message({
+            type: "warning",
+            message: "请输入车皮号!",
+          });
+        } else {
+          if (this.materialId) {
+            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) {
+                          } else {
+                            this.$message({
+                              type: "warning",
+                              message: "请选择装车时间!",
+                            });
+                          }
+                        } else {
+                          this.$message({
+                            type: "warning",
+                            message: "请选择到站!",
+                          });
+                        }
+                      } else {
+                        this.$message({
+                          type: "warning",
+                          message: "请选择发站!",
+                        });
+                      }
+                    } else {
+                      this.$message({
+                        type: "warning",
+                        message: "请选择班别!",
+                      });
+                    }
+                  } else {
+                  this.$message({
+                    type: "warning",
+                    message: "该物资没有采购订单号!",
+                  });
+                }
+              } else {
+                this.$message({
+                  type: "warning",
+                  message: "请选择卸货地点!",
+                });
+              }
+            } else {
+              this.$message({
+                type: "warning",
+                message: "请选择发货单位!",
+              });
+            }
+          } else {
+            this.$message({
+              type: "warning",
+              message: "请选择物资!",
+            });
+          }
+        }
+      }
+      if(state == 1){
+        let map = {
+          wagonNoList:this.list,
+          unloadPointId:this.unloadPointId,
+          purchaseOrderRailPlanId:this.purchaseOrderId,
+          resultClass: this.form1.resultClass,
+          sendStationId: this.form1.sendStationId,
+          arrivalStationId: this.form1.arrivalStationId,
+          resultLoadingDate: sjTime(this.form1.resultLoadingDate),
+          resultRemarks: this.form1.resultRemarks,
+          resultType:2,
+        }
+        this.$axios.post('/api/v1/tms/insertTmstrainLoadingResult',map).then((res)=>{
+          console.log(res);
+          if(res.data.code == "200"){
+            this.$message({
+              type: "success",
+              message: "新增成功",
+            });
+            this.$router.push("/importedEmergency/wagonLoad");
+          }
+        })
+      }
+    },
+    // 取消
+    cancel() {
+      this.$router.go(-1);
+    },
+  },
+};
+</script>
+<style lang='scss'>
+.addWagonLoad {
+  .cp {
+    width: 100%;
+    display: flex;
+    justify-content: center;
+    align-items: center;
+    padding-top: 0.625rem;
+    padding-bottom: 0.625rem;
+    .cp_title {
+      .cp_top {
+        width: 3.125rem;
+        padding-right: 1.25rem;
+      }
+    }
+  }
+  .cpList {
+    display: flex;
+    justify-content: center;
+    width: 100%;
+    height: 10rem;
+    .list {
+      width: 45%;
+      border: #000 0.0625rem solid;
+      padding: 0.625rem;
+      display: flex;
+      flex-wrap: wrap;
+      .cpList1 {
+        background-color: #c9c7c7;
+        height: 1.875rem;
+        margin-right: 0.5rem;
+        padding: 0.625rem;
+        display: flex;
+        align-items: center;
+        justify-content: center;
+        position: relative;
+        .itu {
+          position: absolute;
+          top: -0.125rem;
+          right: 0.0625rem;
+          width: 0.625rem;
+          height: 0.625rem;
+        }
+      }
+    }
+  }
+  .material {
+    display: flex;
+    justify-content: center;
+    align-items: center;
+    height: 3.75rem;
+    .text {
+      text-align: right;
+      width: 8.125rem;
+    }
+  }
+  .forwardingUnit {
+    display: flex;
+    justify-content: center;
+    align-items: center;
+    height: 3.75rem;
+    .text {
+      text-align: right;
+      width: 8.125rem;
+    }
+  }
+  .remark {
+    display: flex;
+    justify-content: center;
+    align-items: center;
+    height: 3.75rem;
+    .text {
+      text-align: right;
+      width: 60px;
+    }
+  }
+  .form {
+    margin-top: 1.25rem;
+    display: flex;
+    justify-content: center;
+    padding-left: 9.375rem;
+  }
+  .button-box {
+    display: flex;
+    justify-content: center;
+  }
+}
+</style>
+

+ 105 - 0
src/views/TMS/importedEmergency/addWagonUnLoad.vue

@@ -0,0 +1,105 @@
+<template>
+  <!-- 添加车皮卸车实绩 -->
+  <div class="addWagonLoad">
+    <page-title>新增</page-title>
+
+    <div class="main">
+      <el-divider content-position="left">选择已装车实绩</el-divider>
+    </div>
+
+    <div>
+      <dilTable
+        v-bind.sync="option"
+        ref="table"
+        @selection-change="selectionChange"
+      >
+      </dilTable>
+    </div>
+
+    <el-divider content-position="left">车皮卸车实绩</el-divider>
+     <div class="form-box" style="margin-right: 10rem">
+        <dil-form :formId="255" 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>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      form1: {},
+       option: {
+        // 表格请求数据的地址
+        requestUrl:
+          "/api/v1/tms/getWagonNo/2?apiId=213",
+        // 控制显示当选列
+        selectionType: "select",
+      },
+      value: undefined,
+      list: [],
+    };
+  },
+  mounted() {},
+  methods: {
+    selectionChange(selection){
+      this.list = [];
+      selection.forEach(e => {
+        this.list.push(
+          {
+            resultWagonNo:e.resultWagonNo,
+            resultId:e.resultId
+          })
+      });
+    },
+    // 确定
+    makeSure() {
+      let tmstrainWagonUnloadResult = {
+        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
+      };
+      console.log(tmstrainWagonUnloadResult);
+      if (tmstrainWagonUnloadResult.wagonNoList==null
+      ||tmstrainWagonUnloadResult.resultArrivalDate==null||
+      tmstrainWagonUnloadResult.resultUnloadTime==null||
+      tmstrainWagonUnloadResult.unloadingPointId==null||
+      tmstrainWagonUnloadResult.resultBigTicketWeight==null||
+      tmstrainWagonUnloadResult.resultRailHorizontalWeight==null
+      ) this.$message.error("存在空值!");
+      else
+      this.$axios
+        .post(
+          "/api/v1/tms/insertTmstrainWagonUnLoadResult",
+          tmstrainWagonUnloadResult
+        )
+        .then(() => {
+          this.$message({
+            type: "success",  
+            message: "新增成功!",
+          });
+          this.$router.go(-1);
+        });
+    },
+    // 取消
+    cancel() {
+      this.$router.go(-1);
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+@import "@/styles/TMS/addWagonUnLoed.scss";
+</style>

+ 102 - 0
src/views/TMS/importedEmergency/editWagonLoad.vue

@@ -0,0 +1,102 @@
+<template>
+  <!-- 修改车皮装车实绩 -->
+  <div id="contractDetails">
+    <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="254" 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>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+ data(){
+     return {
+      form1: {},
+  }
+ },
+  mounted() {
+    this.information();
+  },
+  methods: {
+    information() {
+      //编辑车皮装车作业
+      this.$axios
+        .post("/api/v1/tms/getTmstrainLoadingResultByResultId/" + this.$route.params.resultId)
+        .then((res) => {
+          res.data.data.forEach((e) => {
+            this.form1 = e;
+            console.log(e);
+            console.log(this.form1);
+            console.log(this.$route.params.resultId);
+          });
+        });
+    },
+    handleCheckedCitiesChange(value) {
+      console.log(value);
+    },
+    // 返回
+    onClickCancel() {
+      this.$router.go(-1);
+    },
+    currentRadioChange(row) {
+      this.aaaa = row;
+    },
+    // 确认
+    onClickConfirm() {
+      let tmstrainLoadingResult = {
+        resultId: this.$route.params.resultId,
+        resultWagonNo: this.form1.resultWagonNo,
+        resultBillableTonnage: this.form1.resultBillableTonnage,
+        resultClass: this.form1.resultClass,
+        sendStationId: this.form1.sendStationId,
+        arrivalStationId: this.form1.arrivalStationId,
+        resultLoadingDate: sjTime(this.form1.resultLoadingDate),
+        batchId: this.form1.batchId,
+        capacityId: this.form1.capacityId,
+        resultMaterialNumber: this.form1.resultMaterialNumber,
+        resultMaterialTheoryweight: this.form1.resultMaterialTheoryweight,
+        resultRemarks: this.form1.resultRemarks
+      };
+      if (
+      tmstrainLoadingResult.resultWagonNo==null||
+      tmstrainLoadingResult.resultBillableTonnage==null||
+      tmstrainLoadingResult.resultClass==null||
+      tmstrainLoadingResult.sendStationId==null||
+      tmstrainLoadingResult.arrivalStationId==null||
+      tmstrainLoadingResult.resultLoadingDate==null||
+      tmstrainLoadingResult.batchId==null
+      ) this.$message.error("必填项存在空值!");
+      else
+      this.$axios
+        .post("/api/v1/tms/upadteTmstrainLoadingResultByResultId",tmstrainLoadingResult)
+        .then(() => {
+          this.$message({
+            type: "success",  
+            message: "修改成功!",
+          });
+          this.$router.go(-1);
+        });
+    },
+  },
+};
+</script>
+<style lang="scss" scoped>
+@import "@/styles/TMS/addwagonload.scss";
+</style>

+ 100 - 0
src/views/TMS/importedEmergency/editWagonUnLoad.vue

@@ -0,0 +1,100 @@
+<template>
+  <!-- 修改车皮装车实绩 -->
+  <div id="contractDetails">
+    <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="118" 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>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+ data(){
+     return {
+      form1: {},
+  }
+ },
+  mounted() {
+    this.information();
+  },
+  methods: {
+    information() {
+      //编辑车皮装车作业
+      this.$axios
+        .post("/api/v1/tms/getTmstrainWagonUnLoadResultByUnLoadingId/" + this.$route.params.unloadingId)
+        .then((res) => {
+          res.data.data.forEach((e) => {
+            this.form1 = e;
+            console.log(e);
+            console.log(this.form1);
+            console.log(this.$route.params.unloadingId);
+          });
+        });
+    },
+    handleCheckedCitiesChange(value) {
+      console.log(value);
+    },
+    // 返回
+    onClickCancel() {
+      this.$router.go(-1);
+    },
+    currentRadioChange(row) {
+      this.aaaa = row;
+    },
+    //确定
+    onClickConfirm() {
+      let tmstrainWagonUnloadResult = {
+        unloadingId: this.$route.params.unloadingId,
+        resultWagonNo: this.form1.resultWagonNo,
+        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
+      };
+      console.log(tmstrainWagonUnloadResult);
+      if (tmstrainWagonUnloadResult.resultWagonNo==null
+      ||tmstrainWagonUnloadResult.resultArrivalDate==null||
+      tmstrainWagonUnloadResult.resultUnloadTime==null||
+      tmstrainWagonUnloadResult.unloadingPointId==null||
+      tmstrainWagonUnloadResult.resultBigTicketWeight==null||
+      tmstrainWagonUnloadResult.resultRailHorizontalWeight==null
+      ) this.$message.error("存在空值!");
+      else
+      this.$axios
+        .post(
+          "/api/v1/tms/upadteTmstrainWagonUnLoadResultByUnLoadingId",
+          tmstrainWagonUnloadResult
+        )
+       .then(() => {
+          this.$message({
+            type: "success",  
+            message: "修改成功!",
+          });
+          this.$router.go(-1);
+        });
+    },
+  },
+};
+</script>
+<style lang="scss" scoped>
+@import "@/styles/TMS/addwagonload.scss";
+</style>

+ 63 - 0
src/views/TMS/importedEmergency/entrust.vue

@@ -0,0 +1,63 @@
+<template>
+  <!-- 计量委托 -->
+  <div class="homeworkPath">
+    <div class="top">
+      <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="btnclick(0)">
+        <i class="el-icon-s-promotion"></i>发送
+      </el-button>
+    </div>
+    <dilTable v-bind.sync="option" @selection-change="selectionChange">
+    </dilTable>
+  </div>
+</template>
+
+
+<script>
+export default {
+  data() {
+    return {
+      input: "",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/tms/getLoadResultToSendMC?apiId=58&resultType=2",
+        // 控制显示多选列
+        selectionType: "select",
+      },
+      selectionListMap:[],
+    };
+  },
+  methods: {
+    onclick() {
+      this.option.requestUrl = "/api/v1/tms/getTmstrainWagonLoad?apiId=58&resultType=1&con="+this.input;
+    },
+    btnclick() {
+      this.$axios.post('/api/v1/tms/batchSendMeasureCommission',{resultIdList:this.selectionListMap}).then((res)=>{
+        if(res.data.code == "200"){
+          this.$message({
+            type: "success",
+            message: "发送成功",
+          });
+          this.option.requestUrl = "/api/v1/tms/getLoadResultToSendMC?apiId=58&resultType=2";
+        }
+      })
+    },
+    selectionChange(selection) {
+      this.selectionListMap = [] 
+      selection.forEach(element => {
+        this.selectionListMap.push(element.resultId);
+      });
+    },
+  },
+};
+</script>
+<style lang='scss'>
+.homeworkPath {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 93 - 0
src/views/TMS/importedEmergency/trainDetails.vue

@@ -0,0 +1,93 @@
+<template>
+  <!-- 火运实绩页面 -->
+  <div class="homeworkPath">
+    <div class="top">
+      <span class="top_title">车皮号 : </span>
+      <el-autocomplete
+        popper-class="my-autocomplete"
+        v-model="state"
+        :fetch-suggestions="querySearch"
+        placeholder="请输入内容"
+        @select="handleSelect"
+      >
+        <i class="el-icon-edit el-input__icon" slot="suffix"> </i>
+        <template slot-scope="{ item }">
+          <div class="name">{{ item.value }}</div>
+          <span class="addr">{{ item.address }}</span>
+        </template> 
+      </el-autocomplete>
+
+      <el-button type="primary" class="btn" @click="onclick">
+        <i class="el-icon-search"></i>查询
+      </el-button>
+      
+    </div>
+    <dilTable v-bind.sync="option">
+      
+    </dilTable>
+  </div>
+</template>
+
+
+<script>
+export default {
+  name: "wagonUnload",
+  data() {
+    return {
+      status: "",
+      state: "",
+      option: {       
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/tms/getTmstrainresult?apiId=65",
+      },
+    };
+  },
+  mounted() {
+      debugger
+    this.restaurants = this.loadAll();
+  },
+  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: "三全鲜食(北新泾店)", address: "长宁区新渔路144号" },
+        {
+          value: "Hot honey 首尔炸鸡(仙霞路)",
+          address: "上海市长宁区淞虹路661号",
+        },
+        {
+          value: "新旺角茶餐厅",
+          address: "上海市普陀区真北路988号创邑金沙谷6号楼113",
+        },
+      ];
+    },
+    handleSelect(item) {
+      console.log(item);
+    },
+    onclick() {
+      console.log(1);
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+.homeworkPath {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 89 - 0
src/views/TMS/importedEmergency/wagonLoad.vue

@@ -0,0 +1,89 @@
+<template>
+  <!-- 装车作业页面 -->
+  <div class="homeworkPath">
+    <div class="top">
+      <el-input placeholder="请输入内容" v-model="input" clearable> </el-input>
+      <el-button type="primary" class="btn" @click="onclick(0)">
+        <i class="el-icon-search"></i>查询
+      </el-button>
+      <el-button type="primary" @click="onclick(1)">
+        <i class="el-icon-plus"></i>新增
+      </el-button>
+    </div>
+    <dilTable v-bind.sync="option">
+      <el-table-column fixed="right" label="操作" width="100">
+        <template slot-scope="scope">
+          <el-button @click="onclick(2,scope.row.resultId)" type="text" size="small"
+            >修改</el-button
+          >
+          <el-button
+            type="text"
+            size="small"
+            @click="deleteclick(scope.row.resultId)"
+            >删除</el-button
+          >
+        </template>
+      </el-table-column>
+    </dilTable>
+  </div>
+</template>
+<script>
+export default {
+  name: "wagonload",
+  data() {
+    return {
+      input: "",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/tms/getTmstrainWagonLoad?apiId=209&resultType=2",
+      },
+    };
+  },
+  methods: {
+    onclick(num,resultId) {
+      if (num == 0) {
+        this.option.requestUrl = "/api/v1/tms/getTmstrainWagonLoad?apiId=209&resultType=2&con="+this.input
+      } else if (num == 1) {
+        this.$router.push("/importedEmergency/addWagonLoad")
+      } else if (num == 2) {
+         this.$router.push("/importedEmergency/editWagonLoad/" + resultId)
+      }
+    },
+    deleteclick(resultId) {
+      this.$confirm("是否删除", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+        center: true,
+      })
+        .then(() => {
+          this.$message({
+            type: "success",
+            message: "删除成功!",
+          });
+          this.$axios
+            .post(
+              "/api/v1/tms/deleteTmstrainLoadingResultByResultId?resultId=" +
+                resultId
+            )
+            .then(() => {
+              this.$router.go(0);
+            });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "取消删除!",
+          });
+        });
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+.homeworkPath {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 96 - 0
src/views/TMS/importedEmergency/wagonUnLoad.vue

@@ -0,0 +1,96 @@
+<template>
+  <!-- 卸车作业页面 -->
+  <div class="homeworkPath">
+    <div class="top">
+      <el-input placeholder="请输入内容" v-model="input" clearable> </el-input>
+      <el-button type="primary" class="btn" @click="btnclick(0)">
+        <i class="el-icon-search"></i>查询
+      </el-button>
+      <el-button type="primary" @click="btnclick(1)">
+        <i class="el-icon-plus"></i>新增
+      </el-button>
+    </div>
+
+    <dilTable v-bind.sync="option">
+      <el-table-column fixed="right" label="操作" width="100">
+        <template slot-scope="scope">
+          <el-button
+            @click="btnclick(2,scope.row.unloadingId)"
+            type="text"
+            size="small"
+            >修改</el-button
+          >
+          <el-button
+            type="text"
+            size="small"
+            @click="deleteclick(scope.row.unloadingId)"
+            >删除</el-button
+          >
+        </template>
+      </el-table-column>
+    </dilTable>
+  </div>
+</template>
+
+
+<script>
+export default {
+  name: "wagonUnload",
+  data() {
+    return {
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/tms/getTmstrainWagonUnLoad?apiId=214&resultType=2",
+      },
+      input:''
+    };
+  },
+  methods: {
+    btnclick(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("/importedEmergency/addWagonUnLoad")
+      }else if (num == 2) {
+        this.$router.push("/importedEmergency/editWagonUnLoad/" + unloadingId);
+      }
+    },
+    deleteclick(scope) {
+      let unloadingId = scope;
+      this.$confirm("是否删除", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+        center: true,
+      })
+        .then(() => {
+          this.$message({
+            type: "success",
+            message: "删除成功!",
+          });
+          this.$axios
+            .post(
+              "/api/v1/tms/deleteTmstrainWagonUnLoadResultByUnLoadingId?unloadingId=" +
+                unloadingId
+            )
+            .then(() => {
+              this.$router.go(0);
+            });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "取消删除!",
+          });
+        });
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+.homeworkPath {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 375 - 0
src/views/TMS/importedFuel/transportReserveFuAdd.vue

@@ -0,0 +1,375 @@
+<template>
+  <!-- 新增运输作业页面 -->
+  <div id="contractDetails">
+    <page-title>运输预约</page-title>
+
+    <div class="main">
+      <el-divider content-position="left">新增运输预约</el-divider>
+    </div>
+
+    <div class="material from">
+      <span class="text">物资:</span>
+      <el-input v-model="materialName" disabled> </el-input>
+      <el-button type="primary" @click="ondrawer(1)">浏览</el-button>
+    </div>
+
+    <div class="forwardingUnit from">
+      <span class="text">发货单位:</span>
+      <el-input v-model="supplierName" disabled> </el-input>
+      <el-button type="primary" @click="ondrawer(2)">浏览</el-button>
+    </div>
+
+    <div class="contractTitle from">
+      <dil-form :formId="219" v-model="form1"></dil-form>
+    </div>
+    <div class="truckList1">
+      <div class="truckList from">
+        <span class="text">选择车辆:</span>
+        <el-button type="primary" @click="ondrawer(3)" class="truckBtn"
+          >浏览</el-button
+        >
+      </div>
+    </div>
+    <!-- 车辆表格 -->
+    <div class="truckListTable">
+      <el-table
+        :data="selectionList"
+        border
+        style="width: 100%"
+        highlight-current-row
+      >
+        <el-table-column type="index" width="50" label="序号" align="center">
+        </el-table-column>
+        <el-table-column
+          v-for="(item, i) in tableTop"
+          :key="i"
+          :prop="item.prop"
+          :label="item.label"
+          align="center"
+          show-overflow-tooltip
+        >
+          <template slot="scope" v-if="item.th_name !== '件数'">
+            <span>{{ item.label }}</span>
+          </template>
+          <!-- 插入输入框 -->
+          <template slot-scope="scope">
+            <template v-if="item.slot">
+              <template v-if="item.prop == 'orderMaterialNumber'">
+                <el-input v-model.number="scope.row.orderMaterialNumber"></el-input>
+              </template>
+            </template>
+            <template v-else>
+              <span>{{ scope.row[item.prop] }}</span>
+            </template>
+          </template>
+        </el-table-column>
+      </el-table>
+    </div>
+    <!-- 模态窗口 -->
+    <el-drawer :visible.sync="drawer" :direction="direction" size="30%">
+      <el-input
+        placeholder="请输入内容"
+        v-model="input"
+        style="margin-top: 0.625rem; margin-left: 1.25rem"
+        clearable
+      ></el-input>
+      <el-button
+        type="primary"
+        class="btn"
+        @click="onclick(a)"
+        style="margin-bottom: 0.9375rem"
+      >
+        <i class="el-icon-search"></i>查询
+      </el-button>
+      <div v-show="a == 1">
+        <dilTable
+          v-bind.sync="frist"
+          @radio-change="currentRadioChange1"
+        ></dilTable>
+      </div>
+      <div v-show="a == 2">
+        <dilTable
+          v-bind.sync="secend"
+          @radio-change="currentRadioChange2"
+        ></dilTable>
+      </div>
+      <div v-show="a == 3">
+        <dilTable
+          v-bind.sync="third"
+          @selection-change="currentRadioChange3"
+        ></dilTable>
+      </div>
+    </el-drawer>
+    <div class="button_box">
+      <el-button @click="onClickCancel">返回</el-button>
+      <el-button type="primary" @click="onClickConfirm">确认</el-button>
+    </div>
+  </div>
+</template>
+<script>
+import PageTitle from "@/components/Page/Title";
+import { sjTime, isNumber, isIntegerNumber } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      // 车辆表格表头
+      tableTop: [
+        {
+          prop: "capacityNumber",
+          label: "车牌号",
+          width: "140",
+        },
+        {
+          prop: "carrierName",
+          label: "承运商",
+          width: "140",
+        },
+        {
+          prop: "driverName",
+          label: "司机",
+          width: "140",
+        },
+        {
+          prop: "orderMaterialNumber",
+          label: "件数",
+          slot: true,
+        },
+      ],
+      //车辆表格数据
+      selectionList: [],
+      // 表单
+      form1: {},
+      purchaseOrderId: "",
+      materialName: "",
+      supplierName: "",
+      supplierId: null,
+      materialId: null,
+      drawer: false,
+      a: 1,
+      direction: "rtl",
+      input: "",
+      frist: {
+        requestUrl: "/api/v1/uc/queryMaterialByLike?apiId=244&startNum=010",
+        selectionType: "radio",
+        mapList1: [],
+      },
+      secend: {
+        requestUrl: "/api/v1/uc/querySupplierByLike?apiId=247",
+        selectionType: "radio",
+        mapList2: [],
+      },
+      third: {
+        requestUrl: "/api/v1/uc/getAllCapacityByCarrierLike?apiId=248",
+        selectionType: "select",
+        mapList3: [],
+      },
+    };
+  },
+  methods: {
+    getPurchaseOrderNo() {
+      console.log(this.materialId, "materialId");
+      console.log(this.supplierId, "supplierId");
+      if (this.materialId && this.supplierId) {
+        this.$axios
+          .post("/api/v1/oms/selectNewOrderId", {
+            materialId: this.materialId,
+            supplierId: this.supplierId,
+          })
+          .then((res) => {
+            console.log(res);
+            if (res.data.code == "200") {
+              if (res.data.data == null) {
+                this.$message({
+                  message: "没有匹配的采购订单号!",
+                  type: "warning",
+                });
+              } else {
+                this.purchaseOrderId = res.data.data.purchaseOrderId;
+                this.form1 = { purchaseOrderNo: res.data.data.purchaseOrderNo };
+              }
+            } else {
+              this.$message.error("请求失败");
+            }
+          });
+      }
+    },
+    onclick(a) {
+      if (a == 1) {
+        this.frist.requestUrl =
+          "/api/v1/uc/queryMaterialByLike?apiId=244&startNum=010&index=" + this.input;
+      } else if (a == 2) {
+        this.secend.requestUrl =
+          "/api/v1/uc/querySupplierByLike?apiId=247&index=" + this.input;
+      } else {
+        this.third.requestUrl =
+          "/api/v1/uc/getAllCapacityByCarrierLike?apiId=248&index=" +
+          this.input;
+      }
+    },
+    ondrawer(num) {
+      this.drawer = true;
+      this.a = num;
+    },
+    // 返回
+    onClickCancel() {
+      this.$router.go(-1);
+    },
+    currentRadioChange1(selection) {
+      this.materialName = selection.materialName;
+      this.materialId = selection.materialId;
+      this.getPurchaseOrderNo();
+    },
+    currentRadioChange2(selection) {
+      this.supplierName = selection.supplierName;
+      this.supplierId = selection.supplierId;
+      this.getPurchaseOrderNo();
+    },
+    currentRadioChange3(selection) {
+      console.log(selection,"selection");
+      this.selectionList = [];
+      this.selectionList = selection;
+    },
+    // 确认
+    onClickConfirm() {
+      var state = 0;
+      if (
+        this.materialId &&
+        this.supplierId &&
+        this.form1.purchaseOrderId &&
+        this.form1.unloadPointId &&
+        sjTime(this.form1.orderEntryTime)
+      ) {
+        state = 1;
+      } else {
+        if (!this.materialId) {
+          this.$message({
+            message: "请选择物资!",
+            type: "warning",
+          });
+          if (!this.supplierId) {
+            this.$message({
+              message: "请选择发货单位!",
+              type: "warning",
+            });
+            if (!this.form1.purchaseOrderId) {
+              this.$message({
+                message: "没有匹配的采购订单号!",
+                type: "warning",
+              });
+              if (!this.form1.unloadPointId) {
+                this.$message({
+                  message: "请选择卸货地点!",
+                  type: "warning",
+                });
+                if (!sjTime(this.form1.orderEntryTime)) {
+                  this.$message({
+                    message: "请选择预估进厂时间!",
+                    type: "warning",
+                  });
+                }
+              }
+            }
+          }
+        }
+      }
+      this.selectionList.forEach((e) => {
+        if (e.orderMaterialNumber) {
+          if (isNumber(e.orderMaterialNumber)) {
+            if (isIntegerNumber(e.orderMaterialNumber)) {
+              state = 1;
+            } else {
+              this.$message({
+                message: "件数只能是整数!",
+                type: "warning",
+              });
+              state = 0;
+            }
+          } else {
+            this.$message({
+              message: "件数只能是数字!",
+              type: "warning",
+            });
+            state = 0;
+          }
+        } else {
+          this.$message({
+            message: "件数不能为空!",
+            type: "warning",
+          });
+          state = 0;
+        }
+      });
+      if (state == 1) {
+        let map = {
+          materialId: this.materialId,
+          supplierId: this.supplierId,
+          purchaseOrderId: this.purchaseOrderId,
+          unloadPointId: this.form1.unloadPointId,
+          orderEntryTime: sjTime(this.form1.orderEntryTime),
+          driverCapacityIdList: this.selectionList,
+          orderType: 5
+        };
+        console.log(map);
+        this.$axios.post("/api/v1/oms/addPurOrder", map).then((res) => {
+          if (res.data.code == "200") {
+            this.$message({
+              message: "添加成功!",
+              type: "success",
+            });
+            this.$store.go(-1);
+          }
+        });
+      }
+    },
+  },
+};
+</script>
+
+<style lang="scss" >
+.contractDetails {
+  width: 100%;
+}
+.from {
+  display: flex;
+  align-items: center;
+  justify-content: center;
+  margin-top: 0.3125rem;
+  margin-bottom: 1.25rem;
+}
+.material {
+  .text {
+    display: inline-block;
+    width: 10rem;
+    text-align: right;
+  }
+}
+.forwardingUnit {
+  .text {
+    display: inline-block;
+    width: 10rem;
+    text-align: right;
+  }
+}
+.truckList1 {
+  width: 100%;
+  .truckList {
+    width: 96%;
+    .text {
+      display: inline-block;
+      width: 9.375rem;
+      text-align: right;
+    }
+    .truckBtn {
+      width: 17.5rem;
+    }
+  }
+}
+.button_box {
+  display: flex;
+  justify-content: center;
+  align-items: center;
+  width: 100%;
+  height: 6.25rem;
+}
+</style>

+ 178 - 0
src/views/TMS/importedFuel/transportReserveRan.vue

@@ -0,0 +1,178 @@
+<template>
+  <!-- 燃料运输预约 -->
+  <div class="homeworkPath">
+    <div class="top">
+      <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="insertClick">
+        <i class="el-icon-plus"></i>新增
+      </el-button>
+       <el-button type="primary" @click="issue">
+        <i class="el-icon-plus"></i>下发
+      </el-button>
+    </div>
+    <el-tabs v-model="activeName">
+      <!-- 未下发 -->
+      <el-tab-pane label="未下发" name="first">
+        <dilTable v-bind.sync="option1" ref="table" @selection-change="selectionChange">
+          <el-table-column
+            fixed="right"
+            align="center"
+            label="操作"
+            width="120"
+          >
+            <template slot-scope="scope">
+              <el-button
+                @click="sendClick(scope.row.orderId)"
+                type="text"
+                size="small"
+              >
+                下发
+              </el-button>
+              <el-button
+                @click="updateClick(scope.row.orderId)"
+                type="text"
+                size="small"
+              >
+                修改
+              </el-button>
+              <el-button
+                @click="
+                  deleteClick(scope.row.orderId, scope.row.capacityNumber)
+                "
+                type="text"
+                size="small"
+              >
+                删除
+              </el-button>
+            </template>
+          </el-table-column>
+        </dilTable>
+      </el-tab-pane>
+      <!-- 已下发 -->
+      <el-tab-pane label="已下发" name="second">
+        <dilTable v-bind.sync="option2"> </dilTable>
+      </el-tab-pane>
+    </el-tabs>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "inplantTMS",
+  data() {
+    return {
+      input: "",
+      Time: "",
+      activeName: "first",
+      option1: {
+        // 表格请求数据的地址
+        requestUrl:
+          "/api/v1/oms/getAllTruckOrder?apiId=141&orderStatus=3&fuelOrder=1",
+          selectionType:"select",
+          mapList:[]
+      },
+      option2: {
+        // 表格请求数据的地址
+        requestUrl:
+          "/api/v1/oms/getAllTruckOrder?apiId=243&orderStatus=4&fuelOrder=1",
+      },
+    };
+  },
+  methods: {
+    onclick() {
+      if (this.activeName == "first") {
+        this.option1.requestUrl =
+          "/api/v1/oms/getAllTruckOrder?apiId=141&orderStatus=3&fuelOrder=1&con=" +
+          this.input;
+      } else {
+        this.option2.requestUrl =
+          "/api/v1/oms/getAllTruckOrder?apiId=243&orderStatus=4&fuelOrder=1&con=" +
+          this.input;
+      }
+    },
+    selectionChange(selection){
+        this.mapList = selection
+    },
+    issue(){
+      let mapvalue = {
+        mapList : this.mapList
+      }
+      this.$axios.post("/api/v1/oms/dispatchOrder", mapvalue)},
+    // 下发
+    sendClick(orderId) {
+      this.$confirm("是否下发", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+        center: true,
+      })
+        .then(() => {
+          this.$message({
+            type: "success",
+            message: "下发成功!",
+          });
+          this.$axios
+            .post("/api/v1/oms/dispatchOrder", {
+              orderId: orderId,
+            })
+            .then(() => {
+              this.$router.go(0);
+            });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "取消下发!",
+          });
+        });
+    },
+    // 删除
+    deleteClick(orderId, capacityNumber) {
+      this.$confirm("是否删除", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+        center: true,
+      })
+        .then(() => {
+          this.$message({
+            type: "success",
+            message: "删除成功!",
+          });
+          this.$axios
+            .post("/api/v1/oms/deleteOrder", {
+              orderId: orderId,
+              capacityNumber: capacityNumber,
+            })
+            .then(() => {
+              this.$router.go(0);
+            });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "取消删除!",
+          });
+        });
+    },
+    //新增
+    insertClick() {
+      this.$router.push("/importedFuel/transportReserveRanAdd");
+    },
+    //修改
+    updateClick(orderId) {
+      this.$router.push("/importedFuel/transportReserveRanEdit/" + orderId);
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+.homeworkPath {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 581 - 0
src/views/TMS/importedFuel/transportReserveRanAdd.vue

@@ -0,0 +1,581 @@
+<template>
+  <!-- 新增运输作业页面 -->
+  <div id="contractDetails">
+    <page-title>运输预约</page-title>
+
+    <div class="main">
+      <el-divider content-position="left">新增运输预约</el-divider>
+    </div>
+
+    <div class="material from">
+      <span class="text">物资:</span>
+      <el-input v-model="materialName" disabled> </el-input>
+      <el-button type="primary" @click="ondrawer(1)">浏览</el-button>
+    </div>
+
+    <div class="forwardingUnit from">
+      <span class="text">发货单位:</span>
+      <el-input v-model="supplierName" disabled> </el-input>
+      <el-button type="primary" @click="ondrawer(2)">浏览</el-button>
+    </div>
+    <div class="remark from">
+      <span class="text">船名:</span>
+      <el-input v-model="remark" @blur="onBlur"> </el-input>
+      <span class="span"></span>
+    </div>
+    <div class="forwardingUnit from">
+      <span class="text">卸货点:</span>
+      <el-input v-model="unloadPointName" disabled> </el-input>
+      <el-button type="primary" @click="ondrawer(4)">浏览</el-button>
+    </div>
+    <div class="lineId from">
+      <span class="text">选择路线:</span>
+      <el-input v-model="lineName" disabled> </el-input>
+      <el-button type="primary" @click="ondrawer(5)">浏览</el-button>
+    </div>
+    <div class="orderType from">
+      <span class="text">订单类别:</span>
+      <el-select v-model="orderType" placeholder="请选择">
+        <el-option
+          v-for="item in orderTypeList"
+          :key="item.value"
+          :label="item.label" 
+          :value="item.value"
+        >
+        </el-option>
+      </el-select>
+    </div>
+    <div class="contractTitle from">
+      <dil-form :formId="219" v-model="form1"></dil-form>
+    </div>
+    <div class="truckList1">
+      <div class="truckList from">
+        <span class="text">选择车辆:</span>
+        <el-button type="primary" @click="ondrawer(3)" class="truckBtn"
+          >浏览</el-button
+        >
+      </div>
+    </div>
+    <!-- 车辆表格 -->
+    <div class="switch" v-if="selectionList.length > 0">
+      <el-tooltip placement="top">
+        <div slot="content">下面表格已有数据,不能进行更改!!!</div>
+        <el-switch
+          v-model="value"
+          active-text="重量"
+          inactive-text="件数"
+          disabled
+        >
+        </el-switch>
+      </el-tooltip>
+    </div>
+    <div class="switch" v-else>
+      <el-tooltip placement="top">
+        <div slot="content">当下面表格有数据之后,将不能进行更改!!!</div>
+        <el-switch v-model="value" active-text="重量" inactive-text="件数">
+        </el-switch>
+      </el-tooltip>
+    </div>
+    <div class="truckListTable">
+      <el-table
+        :data="selectionList"
+        border
+        style="width: 100%"
+        highlight-current-row
+      >
+        <el-table-column type="index" width="50" label="序号" align="center">
+        </el-table-column>
+        <el-table-column
+          v-for="(item, i) in tableTop"
+          :key="i"
+          :prop="item.prop"
+          :label="item.label"
+          align="center"
+          show-overflow-tooltip
+        >
+          <template slot="scope" v-if="item.th_name !== '件数'">
+            <span>{{ item.label }}</span>
+          </template>
+          <template slot="scope" v-if="item.th_name !== '重量'">
+            <span>{{ item.label }}</span>
+          </template>
+          <!-- 插入输入框 -->
+          <template slot-scope="scope">
+            <template v-if="item.slot">
+              <template v-if="item.prop == 'orderMaterialNumber'">
+                <el-input
+                  v-model.number="scope.row.orderMaterialNumber"
+                ></el-input>
+              </template>
+              <template v-if="item.prop == 'orderMaterialWeight'">
+                <el-input
+                  v-model.number="scope.row.orderMaterialWeight"
+                ></el-input>
+              </template>
+            </template>
+            <template v-else>
+              <span>{{ scope.row[item.prop] }}</span>
+            </template>
+          </template>
+        </el-table-column>
+
+        <el-table-column fixed="right" label="操作" width="100">
+          <template slot-scope="scope">
+            <el-button type="text" size="small" @click="onClick(scope.$index)"
+              >删除</el-button
+            >
+          </template>
+        </el-table-column>
+      </el-table>
+    </div>
+    <!-- 模态窗口 -->
+    <el-drawer :visible.sync="drawer" :direction="direction" size="30%">
+      <el-input
+        placeholder="请输入内容"
+        v-model="input"
+        style="margin-top: 0.625rem; margin-left: 1.25rem"
+        clearable
+      ></el-input>
+      <el-button
+        type="primary"
+        class="btn"
+        @click="onclick(a)"
+        style="margin-bottom: 0.9375rem"
+      >
+        <i class="el-icon-search"></i>查询
+      </el-button>
+      <div v-show="a == 1">
+        <dilTable
+          v-bind.sync="frist"
+          @radio-change="currentRadioChange1"
+        ></dilTable>
+      </div>
+      <div v-show="a == 2">
+        <dilTable
+          v-bind.sync="secend"
+          @radio-change="currentRadioChange2"
+        ></dilTable>
+      </div>
+      <div v-show="a == 3">
+        <dilTable
+          v-bind.sync="third"
+          @selection-change="currentRadioChange3"
+        ></dilTable>
+      </div>
+      <div v-show="a == 4">
+        <dilTable
+          v-bind.sync="unloadPoint"
+          @radio-change="currentRadioChange4"
+        ></dilTable>
+      </div>
+      <div v-show="a == 5">
+        <dilTable
+          v-bind.sync="line"
+          @radio-change="currentRadioChange5"
+        ></dilTable>
+      </div>
+    </el-drawer>
+    <div class="button_box">
+      <el-button @click="onClickCancel">返回</el-button>
+      <el-button type="primary" @click="onClickConfirm">确认</el-button>
+    </div>
+  </div>
+</template>
+<script>
+import PageTitle from "@/components/Page/Title";
+import { sjTime, isNumber, isIntegerNumber } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      //订单类别
+      orderTypeList:[
+        {
+          value:6,
+          label:'老厂区'
+        },{
+          value:7,
+          label:'新厂区'
+        }
+      ],
+      // 线路名称
+      lineName: "",
+      //线路id
+      lineId: null,
+      // 件数与重量的开关
+      value: false,
+      //船名
+      remark: null,
+      // 车辆表格表头
+      tableTop: [
+        {
+          prop: "capacityNumber",
+          label: "车牌号",
+          width: "140",
+        },
+        {
+          prop: "carrierName",
+          label: "承运商",
+          width: "140",
+        },
+        {
+          prop: "orderMaterialNumber",
+          label: "件数",
+          slot: true,
+        },
+      ],
+      //车辆表格数据
+      selectionList: [],
+      // 表单
+      form1: {},
+      //采购订单id
+      purchaseOrderId: "",
+      //物资名称
+      materialName: "",
+      //发货单位名称
+      supplierName: "",
+      //发货单位id
+      supplierId: null,
+      //物资id
+      materialId: null,
+      //是否需要打开模态窗口
+      drawer: false,
+      //卸货点id
+      unloadPointId: "",
+      //卸货点名称
+      unloadPointName: "",
+      //订单类别
+      orderType:6,
+      a: 1,
+      direction: "rtl",
+      input: "",
+      frist: {
+        requestUrl: "/api/v1/uc/queryAPOMaterialByLike?apiId=244&startNum=050",
+        selectionType: "radio",
+        mapList1: [],
+      },
+      secend: {
+        requestUrl:
+          "/api/v1/uc/getSupplierMesByMaterialId?apiId=247&materialId=",
+        selectionType: "radio",
+        mapList2: [],
+      },
+      third: {
+        requestUrl: "/api/v1/uc/getAllCapacityByCarrierLike?apiId=248",
+        selectionType: "select",
+        mapList3: [],
+      },
+      unloadPoint: {
+        requestUrl: "/api/v1/uc/getUnloadingMesByLike?apiId=374",
+        selectionType: "radio",
+      },
+      line: {
+        requestUrl: "/api/v1/rms/getAllLineDesk?apiId=249&lineType=3",
+        selectionType: "radio",
+      },
+    };
+  },
+  watch: {
+    value() {
+      if (this.value) {
+        this.tableTop.splice(this.tableTop.length - 1, 1);
+        this.tableTop.push({
+          prop: "orderMaterialWeight",
+          label: "重量",
+          slot: true,
+        });
+      } else {
+        this.tableTop.splice(this.tableTop.length - 1, 1);
+        this.tableTop.push({
+          prop: "orderMaterialNumber",
+          label: "件数",
+          slot: true,
+        });
+      }
+    },
+  },
+  methods: {
+    onClick(index) {
+      this.selectionList.splice(index, 1);
+    },
+    onBlur() {
+      this.getPurchaseOrderNo();
+    },
+    getPurchaseOrderNo() {
+      let map = {
+        materialId: this.materialId,
+        supplierId: this.supplierId,
+      };
+      if (this.remark) {
+        map.remark = this.remark;
+      }
+      console.log(this.map);
+      if (this.materialId && this.supplierId) {
+        this.$axios.post("/api/v1/oms/selectNewOrderId", map).then((res) => {
+          console.log(res);
+          if (res.data.code == "200") {
+            if (res.data.data == null) {
+              this.$message({
+                message: "没有匹配的采购订单号!",
+                type: "warning",
+              });
+              this.form1 = [];
+            } else {
+              this.remark = res.data.data.remark;
+              this.purchaseOrderId = res.data.data.purchaseOrderId;
+              this.form1 = { purchaseOrderNo: res.data.data.purchaseOrderNo };
+            }
+          } else {
+            this.$message.error("请求失败");
+          }
+        });
+      }
+    },
+    onclick(a) {
+      if (a == 1) {
+        this.frist.requestUrl =
+          "/api/v1/uc/queryAPOMaterialByLike?apiId=244&startNum=050&index=" +
+          this.input;
+      } else if (a == 2) {
+        this.secend.requestUrl =
+          "/api/v1/uc/getSupplierMesByMaterialId?apiId=247&materialId=" +
+          this.materialId +
+          "&index=" +
+          this.input;
+      } else if (a == 3) {
+        this.third.requestUrl =
+          "/api/v1/uc/getAllCapacityByCarrierLike?apiId=248&index=" +
+          this.input;
+      } else if (a == 4) {
+        this.third.requestUrl =
+          "/api/v1/uc/getUnloadingMesByLike?apiId=347&index=" + this.input;
+      } else if (a == 5) {
+        this.option.requestUrl =
+          "/api/v1/rms/getAllLineDesk?apiId=249&lineType=3&con=" + this.input;
+      }
+    },
+    ondrawer(num) {
+      this.drawer = true;
+      this.a = num;
+      if (num == 2) {
+        this.secend.requestUrl =
+          "/api/v1/uc/getSupplierMesByMaterialId?apiId=247&materialId=" +
+          this.materialId;
+      }
+    },
+    // 返回
+    onClickCancel() {
+      this.$router.push("/importedFuel/transportReserveRan");
+    },
+    currentRadioChange1(selection) {
+      this.materialName = selection.materialName;
+      this.materialId = selection.materialId;
+      this.getPurchaseOrderNo();
+    },
+    currentRadioChange2(selection) {
+      this.supplierName = selection.supplierName;
+      this.supplierId = selection.supplierId;
+      this.getPurchaseOrderNo();
+    },
+    currentRadioChange4(selection) {
+      this.unloadPointId = selection.warehouseId;
+      this.unloadPointName = selection.warehouseName;
+    },
+    currentRadioChange5(selection) {
+      this.lineName = selection.lineName;
+      this.lineId = selection.lineId;
+    },
+    currentRadioChange3(selection) {
+      this.selectionList = [];
+      this.selectionList = selection;
+    },
+    // 确认
+    onClickConfirm() {
+      var state = 0;
+      if (
+        this.materialId &&
+        this.supplierId &&
+        this.form1.purchaseOrderId &&
+        this.unloadPointId &&
+        sjTime(this.form1.orderEntryTime) &&
+        this.lineId
+      ) {
+        state = 1;
+      } else {
+        if (!this.materialId) {
+          this.$message({
+            message: "请选择物资!",
+            type: "warning",
+          });
+        } else if (!this.supplierId) {
+          this.$message({
+            message: "请选择发货单位!",
+            type: "warning",
+          });
+        } else if (!this.purchaseOrderId) {
+          this.$message({
+            message: "没有匹配的采购订单号!",
+            type: "warning",
+          });
+        } else if (!this.unloadPointId) {
+          this.$message({
+            message: "请选择卸货地点!",
+            type: "warning",
+          });
+        } else if (!this.lineId) {
+          this.$message({
+            message: "请选择运输路线!",
+            type: "warning",
+          });
+        } else if (!sjTime(this.form1.orderEntryTime)) {
+          this.$message({
+            message: "请选择预估进厂时间!",
+            type: "warning",
+          });
+        }
+      }
+      if (this.selectionList.length == 0) {
+        this.$message({
+          message: "请选择车辆!",
+          type: "warning",
+        });
+        state = 0;
+      } else {
+        this.selectionList.forEach((e) => {
+          if (e.orderMaterialNumber || e.orderMaterialWeight) {
+            if (
+              isNumber(e.orderMaterialNumber) ||
+              isNumber(e.orderMaterialWeight)
+            ) {
+              if (
+                isIntegerNumber(e.orderMaterialNumber) ||
+                isIntegerNumber(e.orderMaterialWeight)
+              ) {
+                state = 1;
+              } else {
+                this.$message({
+                  message: "件数(重量)只能是整数!",
+                  type: "warning",
+                });
+                state = 0;
+              }
+            } else {
+              this.$message({
+                message: "件数(重量)只能是数字!",
+                type: "warning",
+              });
+              state = 0;
+            }
+          } else {
+            this.$message({
+              message: "件数(重量)不能为空!",
+              type: "warning",
+            });
+            state = 0;
+          }
+        });
+      }
+
+      if (state == 1) {
+        let map = {
+          materialId: this.materialId,
+          supplierId: this.supplierId,
+          purchaseOrderId: this.purchaseOrderId,
+          unloadPointId: this.unloadPointId,
+          orderEntryTime: sjTime(this.form1.orderEntryTime),
+          driverCapacityIdList: this.selectionList,
+          orderType: this.orderType,
+          lineId: this.lineId,
+        };
+        console.log(map, map);
+        this.$axios.post("/api/v1/oms/addPurOrder", map).then((res) => {
+          if (res.data.code == "200") {
+            this.$message({
+              message: "添加成功!",
+              type: "success",
+            });
+            this.$router.push("/importedFuel/transportReserveRan");
+          }
+        });
+      }
+    },
+  },
+};
+</script>
+
+<style lang="scss" >
+.contractDetails {
+  width: 100%;
+}
+.from {
+  display: flex;
+  align-items: center;
+  justify-content: center;
+  margin-top: 0.3125rem;
+  margin-bottom: 1.25rem;
+}
+.remark {
+  .text {
+    display: inline-block;
+    width: 5.625rem;
+    text-align: right;
+  }
+}
+.lineId {
+  .text {
+    display: inline-block;
+    width: 10rem;
+    text-align: right;
+  }
+}
+.material {
+  .text {
+    display: inline-block;
+    width: 10rem;
+    text-align: right;
+  }
+}
+.orderType{
+  .text{
+    display: inline-block;
+    width: 5.625rem;
+    text-align: right;
+  }
+}
+.switch {
+  width: 100%;
+  height: 2.5rem;
+  display: flex;
+  align-items: center;
+  justify-content: flex-end;
+  padding-right: 6.875rem;
+}
+.forwardingUnit {
+  .text {
+    display: inline-block;
+    width: 10rem;
+    text-align: right;
+  }
+}
+.truckList1 {
+  width: 100%;
+  .truckList {
+    width: 96%;
+    .text {
+      display: inline-block;
+      width: 9.375rem;
+      text-align: right;
+    }
+    .truckBtn {
+      width: 17.5rem;
+    }
+  }
+}
+.button_box {
+  display: flex;
+  justify-content: center;
+  align-items: center;
+  width: 100%;
+  height: 6.25rem;
+}
+</style>

+ 83 - 0
src/views/TMS/importedFuel/transportReserveRanEdit.vue

@@ -0,0 +1,83 @@
+<template>
+  <!-- 修改运输预约页面 -->
+  <div id="contractDetails">
+    <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="220" v-model="form1"></dil-form>
+        </div>
+      </div>
+    </div>  
+ 
+    <div class="button-box">
+      <el-button @click="onClickCancel">返回</el-button>
+      <el-button type="primary" @click="onClickConfirm">确认</el-button>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+    data(){
+          return {
+          form1: {},
+        }
+    },
+  mounted() {
+    this.information();
+  },
+  methods: {
+    information() {
+      this.$axios
+        .post("/api/v1/oms/selectOrderByOrderId/" + this.$route.params.orderId)
+        .then((res) => {
+          res.data.data.forEach((e) => {
+            this.form1 = e;
+          });
+        });
+    },
+     // 返回
+    onClickCancel() {
+      this.$router.go(-1);
+    },
+     // 确认
+    onClickConfirm() {
+      let obj = {
+        orderId: this.$route.params.orderId,
+        materialId: this.form1.materialId,
+        orderEntryTime: sjTime(this.form1.orderEntryTime),
+        unloadPointId: this.form1.unloadPointId,
+        orderType: this.form1.orderType
+      };
+
+      if (
+        obj.orderId==null||
+        obj.materialId==null||
+        obj.unloadPointId==null||
+        obj.orderEntryTime==null
+      ) this.$message.error("存在空值!");
+      else
+      this.$axios
+        .post("/api/v1/oms/updateOrder", obj)
+        .then(() => {
+          this.$message({
+            type: "success",  
+            message: "修改成功!",
+          });
+          this.$router.go(-1);
+        });
+    },
+  },
+};
+</script>
+<style lang="scss" scoped>
+@import "@/styles/appoint/contract/ContractInsert.scss";
+</style>

+ 60 - 0
src/views/TMS/importedFuel/truckDriverReceiveRan.vue

@@ -0,0 +1,60 @@
+<template>
+  <!-- 燃料运输派单 -->
+  <div class="homeworkPath">
+    <div class="top">
+      <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>
+    </div>
+    <el-tabs v-model="activeName">
+      <!-- 未下发 -->
+      <el-tab-pane label="已接收" name="first">
+        <dilTable v-bind.sync="option1" ref="table">
+        </dilTable>
+      </el-tab-pane>
+      <!-- 已下发 -->
+      <el-tab-pane label="已拒绝" name="second">
+        <dilTable v-bind.sync="option2">
+        </dilTable>
+      </el-tab-pane>
+    </el-tabs>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "inplantTMS",
+  data() {
+    return {
+      input: "",
+      Time: "",
+      activeName: "first",
+      option1: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/oms/getTransportDispatch?apiId=148&fuelOrder=1&orderStatus=5"
+      },
+      option2: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/oms/getTransportDispatch?apiId=241&fuelOrder=1&orderStatus=6"
+      }
+    };
+  },
+  methods: {
+    onclick() {
+      if(this.activeName == "first"){
+        this.option1.requestUrl = "/api/v1/oms/getTransportDispatch?apiId=241&fuelOrder=1&orderStatus=5&con=" + this.input;
+      }else{
+        this.option2.requestUrl = "/api/v1/oms/getTransportDispatch?apiId=241&fuelOrder=1&orderStatus=6&con=" + this.input;
+      }
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+.homeworkPath {
+   .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 78 - 0
src/views/TMS/importedFuel/truckEnfactoryRanLaoResult.vue

@@ -0,0 +1,78 @@
+<template>
+  <!-- 辅料进厂作业页面 -->
+  <div class="homeworkPath">
+    <div class="top">
+      <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>
+    </div>
+    <dilTable v-bind.sync="option">
+      
+    </dilTable>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "homeworkPath",
+  data() {
+    return {
+      restaurants: [],
+      input: "",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/tms/getAllEnFactoryResult?apiId=143&orderType=6",
+      },
+    };
+  },
+
+  methods: {
+    onclick() {
+      this.option.requestUrl = "/api/v1/tms/getAllEnFactoryResult?apiId=143&orderType=6&con=" + this.input;
+    },
+    updateClick(resultId) {
+      this.$router.push("/tmsTruck/truckLoadResultEdit/" + resultId);
+    },
+    //新增
+    insertClick() {
+      this.$router.push("/tmsTruck/truckLoadResultAdd/");
+    },
+    deleteClick(resultId) {
+      
+      this.$confirm("是否删除", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+        center: true,
+      })
+        .then(() => {
+          this.$message({
+            type: "success",
+            message: "删除成功!",
+          });
+          this.$axios
+            .post(
+              "/api/v1/tms/deleteLoadResult/" + resultId
+            )
+            .then(() => {
+              this.$router.go(0);
+            });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "取消删除!",
+          });
+        });
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+.homeworkPath {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 78 - 0
src/views/TMS/importedFuel/truckEnfactoryRanXingResult.vue

@@ -0,0 +1,78 @@
+<template>
+  <!-- 辅料进厂作业页面 -->
+  <div class="homeworkPath">
+    <div class="top">
+      <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>
+    </div>
+    <dilTable v-bind.sync="option">
+      
+    </dilTable>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "homeworkPath",
+  data() {
+    return {
+      restaurants: [],
+      input: "",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/tms/getAllEnFactoryResult?apiId=143&orderType=7",
+      },
+    };
+  },
+ 
+  methods: {
+    onclick() {
+            this.option.requestUrl = "/api/v1/tms/getAllEnFactoryResult?apiId=143&orderType=7&con=" + this.input;
+    },
+    updateClick(resultId) {
+      this.$router.push("/tmsTruck/truckLoadResultEdit/" + resultId);
+    },
+    //新增
+    insertClick() {
+      this.$router.push("/tmsTruck/truckLoadResultAdd/");
+    },
+    deleteClick(resultId) {
+      
+      this.$confirm("是否删除", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+        center: true,
+      })
+        .then(() => {
+          this.$message({
+            type: "success",
+            message: "删除成功!",
+          });
+          this.$axios
+            .post(
+              "/api/v1/tms/deleteLoadResult/" + resultId
+            )
+            .then(() => {
+              this.$router.go(0);
+            });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "取消删除!",
+          });
+        });
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+.homeworkPath {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 43 - 0
src/views/TMS/importedFuel/truckJiMaoRanLaoResult.vue

@@ -0,0 +1,43 @@
+<template>
+  <!-- 辅料计毛实绩页面 -->
+  <div class="homeworkPath">
+    <div class="top">
+      <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>
+    </div>
+    <dilTable v-bind.sync="option">
+      
+    </dilTable>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "homeworkPath",
+  data() {
+    return {
+      restaurants: [],
+      input: "",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/tms/getAllJiMaoResult?apiId=102&orderType=6",
+      },
+    };
+  },
+
+  methods: {
+    onclick() {
+     this.option.requestUrl = "/api/v1/tms/getAllJiMaoResult?apiId=102&orderType=6&con=" + this.input;
+    },
+   }
+};
+</script>
+<style lang='scss' scoped>
+.homeworkPath {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 43 - 0
src/views/TMS/importedFuel/truckJiMaoRanXingResult.vue

@@ -0,0 +1,43 @@
+<template>
+  <!-- 辅料计毛实绩页面 -->
+  <div class="homeworkPath">
+    <div class="top">
+      <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>
+    </div>
+    <dilTable v-bind.sync="option">
+      
+    </dilTable>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "homeworkPath",
+  data() {
+    return {
+      restaurants: [],
+      input: "",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/tms/getAllJiMaoResult?apiId=102&orderType=7",
+      },
+    };
+  },
+
+  methods: {
+    onclick() {
+     this.option.requestUrl = "/api/v1/tms/getAllJiMaoResult?apiId=102&orderType=7&con=" + this.input;
+    },
+   }
+};
+</script>
+<style lang='scss' scoped>
+.homeworkPath {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 44 - 0
src/views/TMS/importedFuel/truckJiPiRanLaoResult.vue

@@ -0,0 +1,44 @@
+<template>
+  <!-- 辅料计皮实绩页面 -->
+  <div class="homeworkPath">
+    <div class="top">
+      <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>
+    </div>
+    <dilTable v-bind.sync="option">
+      
+    </dilTable>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "homeworkPath",
+  data() {
+    return {
+      restaurants: [],
+      input: "",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/tms/getAllJiPiResult?apiId=146&orderType=6",
+      },
+    };
+  },
+
+  methods: {
+
+    onclick() {
+     this.option.requestUrl = "/api/v1/tms/getAllJiPiResult?apiId=146&orderType=6&con=" + this.input;
+    },
+   }
+};
+</script>
+<style lang='scss' scoped>
+.homeworkPath {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 44 - 0
src/views/TMS/importedFuel/truckJiPiRanXingResult.vue

@@ -0,0 +1,44 @@
+<template>
+  <!-- 辅料计皮实绩页面 -->
+  <div class="homeworkPath">
+   <div class="top">
+      <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>
+    </div>
+    <dilTable v-bind.sync="option">
+      
+    </dilTable>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "homeworkPath",
+  data() {
+    return {
+      restaurants: [],
+      input: "",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/tms/getAllJiPiResult?apiId=146&orderType=7",
+      },
+    };
+  },
+
+  methods: {
+    
+    onclick() {
+     this.option.requestUrl = "/api/v1/tms/getAllJiPiResult?apiId=146&orderType=7&con=" + this.input;
+    },
+   }
+};
+</script>
+<style lang='scss' scoped>
+.homeworkPath {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 44 - 0
src/views/TMS/importedFuel/truckLeaveFactoryRanLaoResult.vue

@@ -0,0 +1,44 @@
+<template>
+  <!-- 辅料出厂作业页面 -->
+  <div class="homeworkPath">
+   <div class="top">
+      <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>
+    </div>
+    <dilTable v-bind.sync="option">
+      
+    </dilTable>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "homeworkPath",
+  data() {
+    return {
+      restaurants: [],
+      input: "",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/tms/getLeaveFactoryResult?apiId=147&orderType=6",
+      },
+    };
+  },
+
+  methods: {
+    
+    onclick() {
+     this.option.requestUrl = "/api/v1/tms/getLeaveFactoryResult?apiId=147&orderType=6&con=" + this.input;
+    },
+   }
+};
+</script>
+<style lang='scss' scoped>
+.homeworkPath {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 43 - 0
src/views/TMS/importedFuel/truckLeaveFactoryRanXingResult.vue

@@ -0,0 +1,43 @@
+<template>
+  <!-- 燃料出厂作业页面 -->
+  <div class="homeworkPath">
+    <div class="top">
+      <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>
+    </div>
+    <dilTable v-bind.sync="option">
+      
+    </dilTable>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "homeworkPath",
+  data() {
+    return {
+      restaurants: [],
+      input: "",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/tms/getLeaveFactoryResult?apiId=147&orderType=7",
+      },
+    };
+  },
+
+  methods: {
+    onclick() {
+      this.option.requestUrl = "/api/v1/tms/getLeaveFactoryResult?apiId=147&orderType=7&con=" + this.input;
+    },
+   }
+};
+</script>
+<style lang='scss' scoped>
+.homeworkPath {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 56 - 0
src/views/TMS/importedFuel/truckQualityRanLaoResult.vue

@@ -0,0 +1,56 @@
+<template>
+  <!-- 辅料质检作业 -->
+  <div class="homeworkPath">
+    <div class="top">
+      <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>
+
+    </div>
+    
+    <dilTable v-bind.sync="option">
+      <el-table-column fixed="right" label="操作" width="50">
+        <template slot-scope="scope">
+          <el-button @click="updateClick(scope.row.resultId)" type="text" size="small">
+            修改
+          </el-button>
+        </template>
+      </el-table-column>
+    </dilTable>
+  </div>
+</template>
+
+
+<script>
+export default {
+  name: "wagonPlease",
+  data() {
+    return {
+      status: "",
+      input: "",
+      option: {       
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/tms/getQualityResult?apiId=150&orderType=6",
+      },
+    };
+  },
+
+  methods: {
+    onclick() {
+         this.option.requestUrl = "/api/v1/tms/getQualityResult?apiId=150&orderType=6&con=" + this.input;
+    },
+    updateClick(resultId) {
+      this.$router.push("/imported1Fuel/truckQualityRanLaoResultEdit/" + resultId);
+    },
+    
+  },
+};
+</script>
+<style lang='scss' scoped>
+.homeworkPath {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 96 - 0
src/views/TMS/importedFuel/truckQualityRanLaoResultEdit.vue

@@ -0,0 +1,96 @@
+<template>
+  <!-- 辅料修改质检作业页面 -->
+  <div id="contractDetails">
+    <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="187" v-model="form1"></dil-form>
+        </div>
+      </div>
+    </div>
+
+    
+    <div class="button-box">
+      <el-button @click="onClickCancel">返回</el-button>
+      <el-button type="primary" @click="onClickConfirm">确认</el-button>
+      
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      // 表单
+      form1: {},
+      // 表格
+      table1: {},
+      contractId: "",
+    };
+  },
+  mounted() {
+    this.information();
+  },
+  methods: {
+  information() {
+      //编辑运输计划
+      this.$axios
+        .post("/api/v1/tms/getQualityResultById/" + this.$route.params.resultId)
+        .then((res) => {
+          res.data.data.forEach((e) => {
+            this.form1 = e;
+          });
+        });
+    },
+
+    handleCheckedCitiesChange(value) {
+      console.log(value);
+    },
+    // 返回
+    onClickCancel() {
+      this.$router.go(-1);
+    },
+    // 确认
+    onClickConfirm() {
+      let QR = {
+        resultId: this.$route.params.resultId,
+        resultIssampling: this.form1.resultIssampling,
+        resultDeduction: this.form1.resultDeduction,
+        resultSamplingPointId: this.form1.resultSamplingPointId,
+        resultDeductionDescription: this.form1.resultDeductionDescription
+      };
+    
+      var val = this.value;
+      if (
+        QR.resultIssampling==null||
+        QR.resultDeduction==null||
+        QR.resultSamplingPointId==null||
+        QR.resultDeductionDescription==null
+      ) this.$message.error("存在空值!");
+      else
+      this.$axios
+        .post("/api/v1/tms/updateQualityResult", QR)
+        .then(() => {
+          this.$message({
+            type: "success",  
+            message: "修改成功!",
+          });
+          this.$router.go(-1);
+        });
+    },
+  },
+};
+</script>
+<style lang="scss" scoped>
+@import "@/styles/appoint/contract/ContractInsert.scss";
+</style>

+ 54 - 0
src/views/TMS/importedFuel/truckQualityRanXingResult.vue

@@ -0,0 +1,54 @@
+<template>
+  <!-- 辅料质检作业 -->
+  <div class="homeworkPath">
+    <div class="top">
+      <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>
+    </div>
+    
+    <dilTable v-bind.sync="option">
+      <el-table-column fixed="right" label="操作" width="50">
+        <template slot-scope="scope">
+          <el-button @click="updateClick(scope.row.resultId)" type="text" size="small">
+            修改
+          </el-button>
+        </template>
+      </el-table-column>
+    </dilTable>
+  </div>
+</template>
+
+
+<script>
+export default {
+  name: "wagonPlease",
+  data() {
+    return {
+      input: "",
+      option: {       
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/tms/getQualityResult?apiId=150&orderType=7",
+      },
+    };
+  },
+  methods: {
+    onclick() {
+      this.option.requestUrl = "/api/v1/tms/getQualityResult?apiId=150&orderType=7&con=" + this.input;
+    },
+
+    updateClick(resultId) {
+      this.$router.push("/imported2Fuel/truckQualityRanXingResultEdit/" + resultId);
+    },
+    
+  },
+};
+</script>
+<style lang='scss' scoped>
+.homeworkPath {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 96 - 0
src/views/TMS/importedFuel/truckQualityRanXingResultEdit.vue

@@ -0,0 +1,96 @@
+<template>
+  <!-- 辅料修改质检作业页面 -->
+  <div id="contractDetails">
+    <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="187" v-model="form1"></dil-form>
+        </div>
+      </div>
+    </div>
+
+    
+    <div class="button-box">
+      <el-button @click="onClickCancel">返回</el-button>
+      <el-button type="primary" @click="onClickConfirm">确认</el-button>
+      
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      // 表单
+      form1: {},
+      // 表格
+      table1: {},
+      contractId: "",
+    };
+  },
+  mounted() {
+    this.information();
+  },
+  methods: {
+  information() {
+      //编辑运输计划
+      this.$axios
+        .post("/api/v1/tms/getQualityResultById/" + this.$route.params.resultId)
+        .then((res) => {
+          res.data.data.forEach((e) => {
+            this.form1 = e;
+          });
+        });
+    },
+
+    handleCheckedCitiesChange(value) {
+      console.log(value);
+    },
+    // 返回
+    onClickCancel() {
+      this.$router.go(-1);
+    },
+    // 确认
+    onClickConfirm() {
+      let QR = {
+        resultId: this.$route.params.resultId,
+        resultIssampling: this.form1.resultIssampling,
+        resultDeduction: this.form1.resultDeduction,
+        resultSamplingPointId: this.form1.resultSamplingPointId,
+        resultDeductionDescription: this.form1.resultDeductionDescription
+      };
+    
+      var val = this.value;
+      if (
+        QR.resultIssampling==null||
+        QR.resultDeduction==null||
+        QR.resultSamplingPointId==null||
+        QR.resultDeductionDescription==null
+      ) this.$message.error("存在空值!");
+      else
+      this.$axios
+        .post("/api/v1/tms/updateQualityResult", QR)
+        .then(() => {
+          this.$message({
+            type: "success",  
+            message: "修改成功!",
+          });
+          this.$router.go(-1);
+        });
+    },
+  },
+};
+</script>
+<style lang="scss" scoped>
+@import "@/styles/appoint/contract/ContractInsert.scss";
+</style>

+ 42 - 0
src/views/TMS/importedFuel/truckReceiptRanLaoResult.vue

@@ -0,0 +1,42 @@
+<template>
+  <!-- 辅料收货作业页面 -->
+  <div class="homeworkPath">
+    <div class="top">
+      <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>
+    </div>
+    <dilTable v-bind.sync="option">
+      
+    </dilTable>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "homeworkPath",
+  data() {
+    return {
+      restaurants: [],
+      input: "",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/tms/getReceiveResult?apiId=149&orderType=6",
+      },
+    };
+  },
+  methods: {
+    onclick() {
+      this.option.requestUrl = "/api/v1/tms/getReceiveResult?apiId=149&orderType=6&con=" + this.input;
+    },
+   }
+};
+</script>
+<style lang='scss' scoped>
+.homeworkPath {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 43 - 0
src/views/TMS/importedFuel/truckReceiptRanXingResult.vue

@@ -0,0 +1,43 @@
+<template>
+  <!-- 辅料收货作业页面 -->
+  <div class="homeworkPath">
+    <div class="top">
+      <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>
+    </div>
+    <dilTable v-bind.sync="option">
+      
+    </dilTable>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "homeworkPath",
+  data() {
+    return {
+      restaurants: [],
+      input: "",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/tms/getReceiveResult?apiId=149&orderType=7",
+      },
+    };
+  },
+
+  methods: {
+    onclick() {
+     this.option.requestUrl = "/api/v1/tms/getReceiveResult?apiId=149&orderType=7&con=" + this.input;
+    },
+   }
+};
+</script>
+<style lang='scss' scoped>
+.homeworkPath {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 41 - 0
src/views/TMS/importedFuel/truckUnloadRanLaoResult.vue

@@ -0,0 +1,41 @@
+<template>
+  <!-- 卸货实绩页面 -->
+  <div class="homeworkPath">
+   <div class="top">
+      <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>
+    </div>
+    <dilTable v-bind.sync="option"></dilTable>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "homeworkPath",
+  data() {
+    return {
+      restaurants: [],
+      input: "",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/tms/getUnloadResult?apiId=145&orderType=6",
+      },
+    };
+  },
+ 
+  methods: {
+    onclick() {
+          this.option.requestUrl = "/api/v1/tms/getUnloadResult?apiId=145&orderType=6&con=" + this.input;
+    },
+   }
+};
+</script>
+<style lang='scss' scoped>
+.homeworkPath {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 43 - 0
src/views/TMS/importedFuel/truckUnloadRanXingResult.vue

@@ -0,0 +1,43 @@
+<template>
+  <!-- 卸货实绩页面 -->
+  <div class="homeworkPath">
+    <div class="top">
+      <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>
+    </div>
+    <dilTable v-bind.sync="option">
+      
+    </dilTable>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "homeworkPath",
+  data() {
+    return {
+      restaurants: [],
+      input: "",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/tms/getUnloadResult?apiId=145&orderType=7",
+      },
+    };
+  },
+
+  methods: {
+    onclick() {
+     this.option.requestUrl = "/api/v1/tms/getUnloadResult?apiId=145&orderType=7&con=" + this.input;
+    },
+   }
+};
+</script>
+<style lang='scss' scoped>
+.homeworkPath {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 120 - 0
src/views/TMS/importedMine/components/addApproveWagonPlease.vue

@@ -0,0 +1,120 @@
+<template>
+  <!-- 新增批车作业页面 -->
+  <div id="contractDetails">
+    <page-title>批车作业</page-title>
+
+    <div class="main">
+      <span class="text">选择已下发请车作业</span>
+      <span class="a"></span>
+    </div>
+ 
+    <div>
+      <dilTable
+        v-bind.sync="option"
+        v-model="table1"
+        @change="handleCheckedCitiesChange"
+        ref="table"
+        @radio-change="currentRadioChange"
+      >
+    
+      </dilTable>
+    </div>
+
+<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="105" v-model="form1"></dil-form>
+        </div>
+      </div>
+    </div>
+
+    <div class="button-box">
+      <el-button @click="onClickCancel">返回</el-button>
+      <el-button type="primary" @click="onClickConfirm">确认</el-button>
+      
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      option: {
+        // 表格请求数据的地址
+        requestUrl:
+          "/api/v1/tms/getAllWagonPlease?apiId=57&status=1&resultType=1",
+        // 控制显示当选列
+        selectionType: "radio",
+      },
+      // 表单
+      form1: {},
+      // 表格
+      table1: {},
+      contractId: "",
+      inf: {},
+    };
+  },
+  mounted() {
+    // this.unit();
+  },
+  methods: {
+    handleCheckedCitiesChange(value) {
+      console.log(value);
+    },
+    // 返回
+    onClickCancel() {
+      this.$router.go(-1);
+    },
+    currentRadioChange(row) {
+      this.inf = row;
+    },
+    // 确认
+    onClickConfirm() {
+      let approveWagonPlease = {
+        resultId: this.inf.resultId,
+        resultApproveDate: sjTime(this.form1.resultApproveDate),
+        resultApproveNumber: this.form1.resultApproveNumber
+      };
+      function isNumber() {
+        var value = approveWagonPlease.resultApproveNumber;
+        //验证是否为数字
+        var patrn = /^(-)?\d+(\.\d+)?$/;
+        if (patrn.exec(value) == null || value == "") {
+          return false;
+        } else {
+          return true;
+        }
+      }
+      var val = this.value;
+      if (
+        approveWagonPlease.resultId==null||
+        approveWagonPlease.resultApproveDate==null||
+        approveWagonPlease.resultApproveNumber==null
+      ) 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.$router.go(-1);
+        });
+    },
+  },
+};
+</script>
+<style lang="scss" scoped>
+@import "@/styles/appoint/contract/ContractInsert.scss";
+</style>

+ 475 - 0
src/views/TMS/importedMine/components/addWagonLoad.vue

@@ -0,0 +1,475 @@
+<template>
+  <!-- 添加车皮装车实绩 -->
+  <div class="addWagonLoad">
+    <page-title>新增</page-title>
+    <el-divider content-position="left">车皮装车实绩</el-divider>
+    <div class="cp">
+      <span>车皮号:</span>
+      <el-input
+        placeholder="请输入内容"
+        v-model="input"
+        @change="onchang"
+        clearable
+      >
+      </el-input>
+    </div>
+    <div class="cpList">
+      <div class="list">
+        <span class="cpList1" v-for="(item, i) in list" :key="i">
+          {{ item }}
+          <i class="el-icon-close itu" @click="onclick(i)"></i>
+        </span>
+      </div>
+    </div>
+
+    <div class="material from">
+      <span class="text">物资:</span>
+      <el-input v-model="materialName" disabled> </el-input>
+      <el-button type="primary" @click="ondrawer(1)">浏览</el-button>
+    </div>
+
+    <div class="forwardingUnit from">
+      <span class="text">发货单位:</span>
+      <el-input v-model="supplierName" disabled> </el-input>
+      <el-button type="primary" @click="ondrawer(2)">浏览</el-button>
+    </div>
+    <div class="remark from">
+      <span class="text">船名:</span>
+      <el-input v-model="remark" @blur="onBlur"> </el-input>
+      <span class="span"></span>
+    </div>
+    <div class="forwardingUnit from">
+      <span class="text">卸货点:</span>
+      <el-input v-model="unloadPointName" disabled> </el-input>
+      <el-button type="primary" @click="ondrawer(4)">浏览</el-button>
+    </div>
+    <div class="form">
+      <div class="form-box" style="margin-right: 10rem">
+        <dil-form :formId="102" v-model="form1" ref="from1"></dil-form>
+      </div>
+    </div>
+    <div class="button-box">
+      <el-button @click="cancel">取消</el-button>
+      <el-button type="primary" @click="makeSure">确定</el-button>
+    </div>
+    <!-- 模态窗口 -->
+    <el-drawer :visible.sync="drawer" :direction="direction" size="30%">
+      <el-input
+        placeholder="请输入内容"
+        v-model="inputText"
+        style="margin-top: 0.625rem; margin-left: 1.25rem"
+        clearable
+      ></el-input>
+      <el-button
+        type="primary"
+        class="btn"
+        @click="onClick(a)"
+        style="margin-bottom: 0.9375rem"
+      >
+        <i class="el-icon-search"></i>查询
+      </el-button>
+      <div v-show="a == 1">
+        <dilTable
+          v-bind.sync="frist"
+          @radio-change="currentRadioChange1"
+        ></dilTable>
+      </div>
+      <div v-show="a == 2">
+        <dilTable
+          v-bind.sync="secend"
+          @radio-change="currentRadioChange2"
+        ></dilTable>
+      </div>
+      <div v-show="a == 4">
+        <dilTable
+          v-bind.sync="unloadPoint"
+          @radio-change="currentRadioChange4"
+        ></dilTable>
+      </div>
+    </el-drawer>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      list: [],
+      form1: {},
+      input: "",
+      value: undefined,
+      //船名
+      remark: null,
+      //采购订单id
+      purchaseOrderId: null,
+      //物资名称
+      materialName: null,
+      //发货单位名称
+      supplierName: null,
+      //发货单位id
+      supplierId: null,
+      //物资id
+      materialId: null,
+      //是否需要打开模态窗口
+      drawer: false,
+      //卸货点id
+      unloadPointId: null,
+      //卸货点名称
+      unloadPointName: null,
+      a: 1,
+      direction: "rtl",
+      inputText: "",
+      frist: {
+        requestUrl: "/api/v1/uc/queryAPOMaterialByLike?apiId=244&startNum=050",
+        selectionType: "radio",
+        mapList1: [],
+      },
+      secend: {
+        requestUrl:
+          "/api/v1/uc/getSupplierMesByMaterialId?apiId=247&materialId=",
+        selectionType: "radio",
+        mapList2: [],
+      },
+      unloadPoint: {
+        requestUrl: "/api/v1/uc/getUnloadingMesByLike?apiId=374",
+        selectionType: "radio",
+      },
+    };
+  },
+  created(){
+    this.form1 = {
+      sendStationId:1,
+      arrivalStationId:2,
+    }
+  },
+  methods: {
+    currentRadioChange1(selection) {
+      this.input = null;
+      this.materialName = selection.materialName;
+      this.materialId = selection.materialId;
+      this.getPurchaseOrderNo();
+    },
+    currentRadioChange2(selection) {
+      this.supplierName = selection.supplierName;
+      this.supplierId = selection.supplierId;
+      this.getPurchaseOrderNo();
+    },
+    currentRadioChange4(selection) {
+      this.unloadPointId = selection.warehouseId;
+      this.unloadPointName = selection.warehouseName;
+    },
+    ondrawer(num) {
+      this.drawer = true;
+      this.a = num;
+      if (num == 2) {
+        this.secend.requestUrl =
+          "/api/v1/uc/getSupplierMesByMaterialId?apiId=247&materialId=" +
+          this.materialId;
+      }
+    },
+    onBlur() {
+      this.getPurchaseOrderNo();
+    },
+    getPurchaseOrderNo() {
+      let map = {
+        materialId: this.materialId,
+        supplierId: this.supplierId,
+      };
+      if (this.remark) {
+        map.remark = this.remark;
+      }
+      console.log(this.map);
+      if (this.materialId && this.supplierId) {
+        this.$axios.post("/api/v1/oms/selectNewOrderId", map).then((res) => {
+          console.log(res);
+          if (res.data.code == "200") {
+            if (res.data.data == null) {
+              this.$message({
+                message: "没有匹配的采购订单号!",
+                type: "warning",
+              });
+              this.form1 = [];
+            } else {
+              this.remark = res.data.data.remark;
+              this.purchaseOrderId = res.data.data.purchaseOrderId;
+              this.form1 = { purchaseOrderNo: res.data.data.purchaseOrderNo };
+            }
+          } else {
+            this.$message.error("请求失败");
+          }
+        });
+      }
+    },
+    onClick(a) {
+      if (a == 1) {
+        this.frist.requestUrl =
+          "/api/v1/uc/queryAPOMaterialByLike?apiId=244&startNum=050&index=" +
+          this.inputText;
+      } else if (a == 2) {
+        this.secend.requestUrl =
+          "/api/v1/uc/getSupplierMesByMaterialId?apiId=247&materialId=" +
+          this.materialId +
+          "&index=" +
+          this.inputText;
+      } else if (a == 4) {
+        this.unloadPoint.requestUrl =
+          "/api/v1/uc/getUnloadingMesByLike?apiId=374&index=" + this.inputText;
+      }
+    },
+    onchang() {
+      var state = false;
+      var cptop = this.input.substring(0, 2);
+      var cptop1 = this.input.substring(0, 3);
+      if (
+        cptop == "45" ||
+        cptop == "46" ||
+        cptop == "42" ||
+        cptop == "47" ||
+        cptop == "15" ||
+        cptop == "16" ||
+        cptop == "17" ||
+        cptop == "18"
+      ) {
+        state = true;
+      } else if (
+        cptop1 == "140" ||
+        cptop1 == "141" ||
+        cptop1 == "142" ||
+        cptop1 == "143" ||
+        cptop1 == "145"
+      ) {
+        state = true;
+      } else {
+        this.$message({
+          type: "warning",
+          message: "车皮号格式不对,请重新输入!",
+        });
+      }
+      if (state) {
+        if (this.input.length == 7) {
+          this.list.push(this.input);
+          this.input = "";
+        } else {
+          this.$message({
+            type: "warning",
+            message: "车皮号长度不足7位数,请重新输入!",
+          });
+        }
+      }
+    },
+    onclick(index) {
+      this.list.splice(index, 1);
+    },
+    // 确定
+    makeSure() {
+      let state = 0;
+      if (
+        this.list.length > 0 &&
+        this.materialId &&
+        this.supplierId &&
+        this.unloadPointId &&
+        this.purchaseOrderId &&
+        this.form1.resultIsclear &&
+        this.form1.resultClass &&
+        this.form1.sendStationId &&
+        this.form1.arrivalStationId &&
+        this.form1.resultLoadingDate
+      ) {
+        state = 1;
+      } else {
+        console.log(this.list.length);
+        if (this.list.length == 0) {
+          this.$message({
+            type: "warning",
+            message: "请输入车皮号!",
+          });
+        } else {
+          if (this.materialId) {
+            if (this.supplierId) {
+              if (this.unloadPointId) {
+                if (this.purchaseOrderId) {
+                  if (this.form1.resultIsclear) {
+                    if (this.form1.resultIsclear) {
+                      if (this.form1.sendStationId) {
+                        if (this.form1.arrivalStationId) {
+                          if (this.form1.resultLoadingDate) {
+                          } else {
+                            this.$message({
+                              type: "warning",
+                              message: "请选择装车时间!",
+                            });
+                          }
+                        } else {
+                          this.$message({
+                            type: "warning",
+                            message: "请选择到站!",
+                          });
+                        }
+                      } else {
+                        this.$message({
+                          type: "warning",
+                          message: "请选择发站!",
+                        });
+                      }
+                    } else {
+                      this.$message({
+                        type: "warning",
+                        message: "请选择班别!",
+                      });
+                    }
+                  } else {
+                    this.$message({
+                      type: "warning",
+                      message: "请选择是否清场!",
+                    });
+                  }
+                } else {
+                  this.$message({
+                    type: "warning",
+                    message: "该物资没有采购订单号!",
+                  });
+                }
+              } else {
+                this.$message({
+                  type: "warning",
+                  message: "请选择卸货地点!",
+                });
+              }
+            } else {
+              this.$message({
+                type: "warning",
+                message: "请选择发货单位!",
+              });
+            }
+          } else {
+            this.$message({
+              type: "warning",
+              message: "请选择物资!",
+            });
+          }
+        }
+      }
+      if(state == 1){
+        let map = {
+          wagonNoList:this.list,
+          unloadPointId:this.unloadPointId,
+          purchaseOrderRailPlanId:this.purchaseOrderId,
+          resultIsclear:this.form1.resultIsclear,
+          resultClass: this.form1.resultClass,
+          sendStationId: this.form1.sendStationId,
+          arrivalStationId: this.form1.arrivalStationId,
+          resultLoadingDate: sjTime(this.form1.resultLoadingDate),
+          resultRemarks: this.form1.resultRemarks,
+          resultType:1,
+        }
+        this.$axios.post('/api/v1/tms/insertTmstrainLoadingResult',map).then((res)=>{
+          console.log(res);
+          if(res.data.code == "200"){
+            this.$message({
+              type: "success",
+              message: "新增成功",
+            });
+            this.$router.push("/importedMine/wagonLoad");
+          }
+        })
+      }
+    },
+    // 取消
+    cancel() {
+      this.$router.go(-1);
+    },
+  },
+};
+</script>
+<style lang='scss'>
+.addWagonLoad {
+  .cp {
+    width: 100%;
+    display: flex;
+    justify-content: center;
+    align-items: center;
+    padding-top: 0.625rem;
+    padding-bottom: 0.625rem;
+    .cp_title {
+      .cp_top {
+        width: 3.125rem;
+        padding-right: 1.25rem;
+      }
+    }
+  }
+  .cpList {
+    display: flex;
+    justify-content: center;
+    width: 100%;
+    height: 10rem;
+    .list {
+      width: 45%;
+      border: #000 0.0625rem solid;
+      padding: 0.625rem;
+      display: flex;
+      flex-wrap: wrap;
+      .cpList1 {
+        background-color: #c9c7c7;
+        height: 1.875rem;
+        margin-right: 0.5rem;
+        padding: 0.625rem;
+        display: flex;
+        align-items: center;
+        justify-content: center;
+        position: relative;
+        .itu {
+          position: absolute;
+          top: -0.125rem;
+          right: 0.0625rem;
+          width: 0.625rem;
+          height: 0.625rem;
+        }
+      }
+    }
+  }
+  .material {
+    display: flex;
+    justify-content: center;
+    align-items: center;
+    height: 3.75rem;
+    .text {
+      text-align: right;
+      width: 8.125rem;
+    }
+  }
+  .forwardingUnit {
+    display: flex;
+    justify-content: center;
+    align-items: center;
+    height: 3.75rem;
+    .text {
+      text-align: right;
+      width: 8.125rem;
+    }
+  }
+  .remark {
+    display: flex;
+    justify-content: center;
+    align-items: center;
+    height: 3.75rem;
+    .text {
+      text-align: right;
+      width: 60px;
+    }
+  }
+  .form {
+    margin-top: 1.25rem;
+    display: flex;
+    justify-content: center;
+    padding-left: 9.375rem;
+  }
+  .button-box {
+    display: flex;
+    justify-content: center;
+  }
+}
+</style>
+

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

@@ -0,0 +1,96 @@
+<template>
+  <!-- 新增请作业页面 -->
+  <div id="contractDetails">
+    <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="122" v-model="form1" ></dil-form>
+        </div>
+      </div>
+    </div>
+    <div class="button-box">
+      <el-button @click="onClickCancel">返回</el-button>
+      <el-button type="primary" @click="onClickConfirm" >确认</el-button>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      // 表单
+      form1: {},
+    };
+  },
+  mounted() {
+    // this.unit();
+  },
+  methods: {
+    handleCheckedCitiesChange(value) {
+      console.log(value);
+    },
+    
+    // 返回
+    onClickCancel() {
+      this.$router.go(-1);
+    },
+     // 确认
+    onClickConfirm() {
+      let tmstrainPleaseApproveResult = {
+        resultPlanDate: sjTime(this.form1.resultPlanDate),
+        resultCategory: this.form1.resultCategory,
+        shipperId: this.form1.shipperId,
+        sendStationId: this.form1.sendStationId,
+        toTheStationId: this.form1.toTheStationId,
+        resultPleaseNumber: this.form1.resultPleaseNumber,
+        insertUsername: "admin",
+        resultType: 1
+      };
+      function isNumber() {
+        var value = tmstrainPleaseApproveResult.resultPleaseNumber;
+        //验证是否为数字
+        var patrn = /^(-)?\d+(\.\d+)?$/;
+        if (patrn.exec(value) == null || value == "") {
+          return false;
+        } else {
+          return true;
+        }
+      }
+      var val = this.value;
+      if (
+        tmstrainPleaseApproveResult.resultPlanDate==null||
+        tmstrainPleaseApproveResult.resultCategory==null||
+        tmstrainPleaseApproveResult.shipperId==null||
+        tmstrainPleaseApproveResult.sendStationId==null||
+        tmstrainPleaseApproveResult.toTheStationId==null||
+        tmstrainPleaseApproveResult.resultPleaseNumber==null
+
+      ) this.$message.error("存在空值!");
+      else
+      if (!isNumber(val)) this.$message.error("请车数量必须是数字!");
+      else
+      this.$axios
+        .post("/api/v1/tms/addWagonPlease", tmstrainPleaseApproveResult)
+        .then(() => {
+          this.$message({
+            type: "success",  
+            message: "新增成功!",
+          });
+          this.$router.go(-1);
+        });
+    },
+  },
+};
+</script>
+<style lang="scss" scoped>
+@import "@/styles/appoint/contract/ContractInsert.scss";
+</style>

+ 102 - 0
src/views/TMS/importedMine/components/addWagonUnLoad.vue

@@ -0,0 +1,102 @@
+<template>
+  <!-- 添加车皮卸车实绩 -->
+  <div class="addWagonLoad">
+    <page-title>新增</page-title>
+    <div class="main">
+      <el-divider content-position="left">选择已装车实绩</el-divider>
+    </div>
+    <div>
+      <dilTable
+        v-bind.sync="option"
+        ref="table"
+        @selection-change="selectionChange"
+      >
+      </dilTable>
+    </div>
+    <el-divider content-position="left">车皮卸车实绩</el-divider>
+    <div class="form-box" style="margin-right: 10rem">
+      <dil-form :formId="116" v-model="form1" ref="from1"></dil-form>
+    </div>
+    <div class="button-box">
+      <el-button @click="cancel" class="btn">取消</el-button>
+      <el-button type="primary" @click="makeSure" class="btn">确定</el-button>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      form1: {},
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/tms/getWagonNo/1?apiId=213",
+        // 控制显示当选列
+        selectionType: "select",
+      },
+      value: undefined,
+      list: [],
+    };
+  },
+  mounted() {},
+  methods: {
+    selectionChange(selection) {
+      this.list = [];
+      selection.forEach((e) => {
+        this.list.push({
+          resultWagonNo: e.resultWagonNo,
+          resultId: e.resultId,
+        });
+      });
+    },
+    // 确定
+    makeSure() {
+      let tmstrainWagonUnloadResult = {
+        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: 1,
+      };
+      console.log(tmstrainWagonUnloadResult);
+      if (
+        tmstrainWagonUnloadResult.wagonNoList == null ||
+        tmstrainWagonUnloadResult.resultArrivalDate == null ||
+        tmstrainWagonUnloadResult.resultUnloadTime == null ||
+        tmstrainWagonUnloadResult.unloadingPointId == null ||
+        tmstrainWagonUnloadResult.resultBigTicketWeight == null ||
+        tmstrainWagonUnloadResult.resultRailHorizontalWeight == null ||
+        tmstrainWagonUnloadResult.resultRemark == null
+      )
+        this.$message.error("存在空值!");
+      else
+        this.$axios
+          .post(
+            "/api/v1/tms/insertTmstrainWagonUnLoadResult",
+            tmstrainWagonUnloadResult
+          )
+          .then(() => {
+            this.$message({
+              type: "success",
+              message: "新增成功!",
+            });
+            this.$router.go(-1);
+          });
+    },
+    // 取消
+    cancel() {
+      this.$router.go(-1);
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+@import "@/styles/TMS/addWagonUnLoed.scss";
+</style>

+ 100 - 0
src/views/TMS/importedMine/components/editApproveWagonPlease.vue

@@ -0,0 +1,100 @@
+<template>
+  <!-- 修改批车作业页面 -->
+  <div id="contractDetails">
+    <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="140" v-model="form1"></dil-form>
+        </div>
+      </div>
+    </div>  
+ 
+    <div class="button-box">
+      <el-button @click="onClickCancel">返回</el-button>
+      <el-button type="primary" @click="onClickConfirm">确认</el-button>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+export default {
+  components: { PageTitle },
+    data(){
+          return {
+          form1: {},
+        }
+    },
+  mounted() {
+    this.information();
+  },
+  methods: {
+    information() {
+      //编辑批车作业 渲染数据
+      this.$axios
+        .post("/api/v1/tms/getApproveWagonPleaseById/" + this.$route.params.resultId)
+        .then((res) => {
+          res.data.data.forEach((e) => {
+            this.form1 = e;
+          });
+        });
+    },
+     // 返回
+    onClickCancel() {
+      this.$router.go(-1);
+    },
+    // 确认
+    onClickConfirm() {
+      let approveWagonPlease = {
+        resultId: this.$route.params.resultId,
+        resultApproveDate: this.form1.resultApproveDate,
+        resultApproveNumber: this.form1.resultApproveNumber,
+        shipperId: this.form1.shipperId,
+        resultCategory: this.form1.resultCategory,
+        sendStationId: this.form1.sendStationId,
+        toTheStationId: this.form1.toTheStationId,
+        updateUsername: "admin"
+      };
+      function isNumber() {
+        var value = approveWagonPlease.resultApproveNumber;
+        //验证是否为数字
+        var patrn = /^(-)?\d+(\.\d+)?$/;
+        if (patrn.exec(value) == null || value == "") {
+          return false;
+        } else {
+          return true;
+        }
+      }
+      var val = this.value;
+      if (
+        approveWagonPlease.resultApproveDate==null||
+        approveWagonPlease.resultApproveNumber==null||
+        approveWagonPlease.shipperId==null||
+        approveWagonPlease.resultCategory==null||
+        approveWagonPlease.sendStationId==null||
+        approveWagonPlease.toTheStationId==null
+      ) this.$message.error("存在空值!");
+      else
+      if (!isNumber(val)) this.$message.error("请车数必须是数字!");
+      else
+      this.$axios
+        .post("/api/v1/tms/updateApproveWagonPlease", approveWagonPlease)
+        .then(() => {
+          this.$message({
+            type: "success",  
+            message: "修改成功!",
+          });
+          this.$router.go(-1);
+        });
+    },
+  },
+};
+</script>
+<style lang="scss" scoped>
+@import "@/styles/appoint/contract/ContractInsert.scss";
+</style>

+ 105 - 0
src/views/TMS/importedMine/components/editWagonLoad.vue

@@ -0,0 +1,105 @@
+<template>
+  <!-- 修改车皮装车实绩 -->
+  <div id="contractDetails">
+    <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="103" 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>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+ data(){
+     return {
+      form1: {},
+  }
+ },
+  mounted() {
+    this.information();
+  },
+  methods: {
+    information() {
+      //编辑车皮装车作业
+      this.$axios
+        .post("/api/v1/tms/getTmstrainLoadingResultByResultId/" + this.$route.params.resultId)
+        .then((res) => {
+          res.data.data.forEach((e) => {
+            this.form1 = e;
+            console.log(e);
+            console.log(this.form1);
+            console.log(this.$route.params.resultId);
+          });
+        });
+    },
+    handleCheckedCitiesChange(value) {
+      console.log(value);
+    },
+    // 返回
+    onClickCancel() {
+      this.$router.go(-1);
+    },
+    currentRadioChange(row) {
+      this.aaaa = row;
+    },
+    // 确认
+    onClickConfirm() {
+      let tmstrainLoadingResult = {
+        resultId: this.$route.params.resultId,
+        resultWagonNo: this.form1.resultWagonNo,
+        resultBillableTonnage: this.form1.resultBillableTonnage,
+        resultIsclear: this.form1.resultIsclear,
+        resultClass: this.form1.resultClass,
+        sendStationId: this.form1.sendStationId,
+        arrivalStationId: this.form1.arrivalStationId,
+        resultLoadingDate: sjTime(this.form1.resultLoadingDate),
+        batchId: this.form1.batchId,
+        capacityId: this.form1.capacityId,
+        resultMaterialNumber: this.form1.resultMaterialNumber,
+        resultMaterialTheoryweight: this.form1.resultMaterialTheoryweight,
+        resultRemarks: this.form1.resultRemarks
+      };
+      if (
+      tmstrainLoadingResult.resultWagonNo==null||
+      tmstrainLoadingResult.resultBillableTonnage==null||
+      tmstrainLoadingResult.resultIsclear==null||
+      tmstrainLoadingResult.resultClass==null||
+      tmstrainLoadingResult.sendStationId==null||
+      tmstrainLoadingResult.arrivalStationId==null||
+      tmstrainLoadingResult.resultLoadingDate==null||
+      tmstrainLoadingResult.batchId==null||
+      tmstrainLoadingResult.resultRemarks==null
+      ) this.$message.error("必填项存在空值!");
+      else
+      this.$axios
+        .post("/api/v1/tms/upadteTmstrainLoadingResultByResultId",tmstrainLoadingResult)
+        .then(() => {
+          this.$message({
+            type: "success",  
+            message: "修改成功!",
+          });
+          this.$router.go(-1);
+        });
+    },
+  },
+};
+</script>
+<style lang="scss" scoped>
+@import "@/styles/TMS/addwagonload.scss";
+</style>

+ 100 - 0
src/views/TMS/importedMine/components/editWagonPlease.vue

@@ -0,0 +1,100 @@
+<template>
+  <!-- 修改请车作业页面 -->
+  <div id="contractDetails">
+    <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="117" v-model="form1"></dil-form>
+        </div>
+      </div>
+    </div>  
+ 
+    <div class="button-box">
+      <el-button @click="onClickCancel">返回</el-button>
+      <el-button type="primary" @click="onClickConfirm">确认</el-button>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+    data(){
+          return {
+          form1: {},
+        }
+    },
+  mounted() {
+    this.information();
+  },
+  methods: {
+    information() {
+      //编辑请车作业
+      this.$axios
+        .post("/api/v1/tms/getWagonPleaseById/" + this.$route.params.resultId)
+        .then((res) => {
+          res.data.data.forEach((e) => {
+            this.form1 = e;
+          });
+        });
+    },
+     // 返回
+    onClickCancel() {
+      this.$router.go(-1);
+    },
+     // 确认
+    onClickConfirm() {
+      let tmstrainPleaseApproveResult = {
+        resultId: this.$route.params.resultId,
+        resultPlanDate: sjTime(this.form1.resultPlanDate),
+        resultCategory: this.form1.resultCategory,
+        shipperId: this.form1.shipperId,
+        sendStationId: this.form1.sendStationId,
+        toTheStationId: this.form1.toTheStationId,
+        resultPleaseNumber: this.form1.resultPleaseNumber
+      };
+      function isNumber() {
+        var value = tmstrainPleaseApproveResult.resultPleaseNumber;
+        //验证是否为数字
+        var patrn = /^(-)?\d+(\.\d+)?$/;
+        if (patrn.exec(value) == null || value == "") {
+          return false;
+        } else {
+          return true;
+        }
+      }
+      var val = this.value;
+      if (
+        tmstrainPleaseApproveResult.resultPlanDate==null||
+        tmstrainPleaseApproveResult.resultCategory==null||
+        tmstrainPleaseApproveResult.shipperId==null||
+        tmstrainPleaseApproveResult.sendStationId==null||
+        tmstrainPleaseApproveResult.toTheStationId==null||
+        tmstrainPleaseApproveResult.resultPleaseNumber==null
+      ) this.$message.error("存在空值!");
+      else
+      if (!isNumber(val)) this.$message.error("请车数必须是数字!");
+      else
+      this.$axios
+        .post("/api/v1/tms/updateApproveWagonPlease", tmstrainPleaseApproveResult)
+        .then(() => {
+          this.$message({
+            type: "success",  
+            message: "修改成功!",
+          });
+          this.$router.go(-1);
+        });
+    },
+  },
+};
+</script>
+<style lang="scss" scoped>
+@import "@/styles/appoint/contract/ContractInsert.scss";
+</style>

+ 100 - 0
src/views/TMS/importedMine/components/editWagonUnLoad.vue

@@ -0,0 +1,100 @@
+<template>
+  <!-- 修改车皮装车实绩 -->
+  <div id="contractDetails">
+    <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="118" 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>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+ data(){
+     return {
+      form1: {},
+  }
+ },
+  mounted() {
+    this.information();
+  },
+  methods: {
+    information() {
+      //编辑车皮装车作业
+      this.$axios
+        .post("/api/v1/tms/getTmstrainWagonUnLoadResultByUnLoadingId/" + this.$route.params.unloadingId)
+        .then((res) => {
+          res.data.data.forEach((e) => {
+            this.form1 = e;
+            console.log(e);
+            console.log(this.form1);
+            console.log(this.$route.params.unloadingId);
+          });
+        });
+    },
+    handleCheckedCitiesChange(value) {
+      console.log(value);
+    },
+    // 返回
+    onClickCancel() {
+      this.$router.go(-1);
+    },
+    currentRadioChange(row) {
+      this.aaaa = row;
+    },
+    //确定
+    onClickConfirm() {
+      let tmstrainWagonUnloadResult = {
+        unloadingId: this.$route.params.unloadingId,
+        resultWagonNo: this.form1.resultWagonNo,
+        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
+      };
+      console.log(tmstrainWagonUnloadResult);
+      if (tmstrainWagonUnloadResult.resultWagonNo==null
+      ||tmstrainWagonUnloadResult.resultArrivalDate==null||
+      tmstrainWagonUnloadResult.resultUnloadTime==null||
+      tmstrainWagonUnloadResult.unloadingPointId==null||
+      tmstrainWagonUnloadResult.resultBigTicketWeight==null||
+      tmstrainWagonUnloadResult.resultRailHorizontalWeight==null
+      ) this.$message.error("存在空值!");
+      else
+      this.$axios
+        .post(
+          "/api/v1/tms/upadteTmstrainWagonUnLoadResultByUnLoadingId",
+          tmstrainWagonUnloadResult
+        )
+       .then(() => {
+          this.$message({
+            type: "success",  
+            message: "修改成功!",
+          });
+          this.$router.go(-1);
+        });
+    },
+  },
+};
+</script>
+<style lang="scss" scoped>
+@import "@/styles/TMS/addwagonload.scss";
+</style>

+ 63 - 0
src/views/TMS/importedMine/components/entrust.vue

@@ -0,0 +1,63 @@
+<template>
+  <!-- 发送计量委托界面 -->
+  <div class="homeworkPath">
+    <div class="top">
+      <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="btnclick(0)">
+        <i class="el-icon-s-promotion"></i>发送
+      </el-button>
+    </div>
+    <dilTable v-bind.sync="option" @selection-change="selectionChange">
+    </dilTable>
+  </div>
+</template>
+
+
+<script>
+export default {
+  data() {
+    return {
+      input: "",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/tms/getLoadResultToSendMC?apiId=58&resultType=1",
+        // 控制显示多选列
+        selectionType: "select",
+      },
+      selectionListMap:[],
+    };
+  },
+  methods: {
+    onclick() {
+      this.option.requestUrl = "/api/v1/tms/getLoadResultToSendMC?apiId=58&resultType=1&con="+this.input;
+    },
+    btnclick() {
+      this.$axios.post('/api/v1/tms/batchSendMeasureCommission',{resultIdList:this.selectionListMap}).then((res)=>{
+        if(res.data.code == "200"){
+          this.$message({
+            type: "success",
+            message: "发送成功",
+          });
+          this.option.requestUrl = "/api/v1/tms/getLoadResultToSendMC?apiId=58&resultType=1";
+        }
+      })
+    },
+    selectionChange(selection) {
+      this.selectionListMap = [] 
+      selection.forEach(element => {
+        this.selectionListMap.push(element.resultId);
+      });
+    },
+  },
+};
+</script>
+<style lang='scss'>
+.homeworkPath {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 63 - 0
src/views/TMS/importedMine/components/wagonApprove.vue

@@ -0,0 +1,63 @@
+<template>
+  <!-- 批车作业页面 -->
+  <div class="homeworkPath">
+    <div class="top">
+      <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="btnclick">
+        <i class="el-icon-plus"></i>新增
+      </el-button>
+    </div>
+
+    <dilTable v-bind.sync="option">
+      <el-table-column fixed="right" label="操作" width="50">
+        <template slot-scope="scope">
+          <el-button
+            @click="updateClick(scope.row.resultId)"
+            type="text"
+            size="small"
+          >
+            修改
+          </el-button>
+        </template>
+      </el-table-column>
+    </dilTable>
+  </div>
+</template>
+
+
+<script>
+export default {
+  name: "wagonPlease",
+  data() {
+    return {
+      input: "",
+      option: {
+        // 表格请求数据的地址
+        requestUrl:
+          "/api/v1/tms/getApproveAllWagonPlease?apiId=70&resultType=1",
+      },
+    };
+  },
+  methods: {
+    onclick() {
+      this.option.requestUrl = "/api/v1/tms/getApproveAllWagonPlease?apiId=70&resultType=1&con="+this.input;
+    },
+    btnclick() {
+      this.$router.push("/importedMine/addApproveWagonPlease/");
+    },
+    updateClick(resultId) {
+      this.$router.push("/importedMine/editApproveWagonPlease/" + resultId);
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+.homeworkPath {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 93 - 0
src/views/TMS/importedMine/components/wagonLoad.vue

@@ -0,0 +1,93 @@
+<template>
+  <!-- 装车作业页面 -->
+  <div class="homeworkPath">
+    <div class="top">
+      <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="btnclick(0)">
+        <i class="el-icon-plus"></i>新增
+      </el-button>
+    </div>
+
+    <dilTable v-bind.sync="option">
+      <el-table-column fixed="right" label="操作" width="100">
+        <template slot-scope="scope">
+          <el-button @click="click(scope.row.resultId)" type="text" size="small"
+            >修改</el-button
+          >
+          <el-button
+            type="text"
+            size="small"
+            @click="deleteclick(scope.row.resultId)"
+            >删除</el-button
+          >
+        </template>
+      </el-table-column>
+    </dilTable>
+  </div>
+</template>
+
+
+<script>
+export default {
+  name: "wagonload",
+  data() {
+    return {
+      input: "",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/tms/getTmstrainWagonLoad?apiId=58&resultType=1",
+      },
+    };
+  },
+  methods: {
+    onclick() {
+      this.option.requestUrl = "/api/v1/tms/getTmstrainWagonLoad?apiId=58&resultType=1&con="+this.input;
+    },
+    btnclick() {
+      this.$router.push("/importedMine/addWagonLoad");
+    },
+    click(resultId) {
+      this.$router.push("/importedMine/editWagonLoad/" + resultId);
+    },
+    deleteclick(scope) {
+      let resultId = scope;
+      this.$confirm("是否删除", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+        center: true,
+      })
+        .then(() => {
+          this.$message({
+            type: "success",
+            message: "删除成功!",
+          });
+          this.$axios
+            .post(
+              "/api/v1/tms/deleteTmstrainLoadingResultByResultId?resultId=" +
+                resultId
+            )
+            .then(() => {
+              this.$router.go(0);
+            });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "取消删除!",
+          });
+        });
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+.homeworkPath {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 155 - 0
src/views/TMS/importedMine/components/wagonPlease.vue

@@ -0,0 +1,155 @@
+<template>
+  <!-- 请车作业页面 -->
+  <div class="homeworkPath">
+    <div class="top">
+      <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="insertClick">
+        <i class="el-icon-plus"></i>新增
+      </el-button>
+    </div>
+    <el-tabs v-model="activeName">
+      <!-- 未下发 -->
+      <el-tab-pane label="未下发" name="first">
+        <dilTable v-bind.sync="option1" ref="table">
+          <el-table-column fixed="right" label="操作" width="120">
+            <template slot-scope="scope">
+              <el-button
+                @click="updateClick(scope.row.resultId)"
+                type="text"
+                size="small"
+              >
+                修改
+              </el-button>
+              <el-button
+                @click="deleteClick(scope.row.resultId)"
+                type="text"
+                size="small"
+              >
+                删除
+              </el-button>
+              <el-button
+                @click="sendClick(scope.row.resultId)"
+                type="text"
+                size="small"
+              >
+                下发
+              </el-button>
+            </template>
+          </el-table-column>
+        </dilTable>
+      </el-tab-pane>
+      <!-- 已下发 -->
+      <el-tab-pane label="已下发" name="second">
+        <dilTable v-bind.sync="option2"></dilTable>
+      </el-tab-pane>
+    </el-tabs>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "inplantTMS",
+  data() {
+    return {
+      input: "",
+      activeName: "first",
+      option1: {
+        // 表格请求数据的地址
+        requestUrl:
+          "/api/v1/tms/getAllWagonPlease?apiId=57&status=0&resultType=1",
+      },
+      option2: {
+        // 表格请求数据的地址
+        requestUrl:
+          "/api/v1/tms/getAllWagonPlease?apiId=57&status=1&resultType=1",
+      },
+    };
+  },
+  methods: {
+    onclick() {
+      if (this.activeName == "first") {
+        this.option1.requestUrl =
+          "/api/v1/tms/getAllWagonPlease?apiId=57&status=0&resultType=1&con=" +
+          this.input;
+      } else {
+        this.option2.requestUrl =
+          "/api/v1/tms/getAllWagonPlease?apiId=57&status=1&resultType=1&con=" +
+          this.input;
+      }
+    },
+    // 删除
+    deleteClick(resultId) {
+      this.$confirm("是否删除", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+        center: true,
+      })
+        .then(() => {
+          this.$message({
+            type: "success",
+            message: "删除成功!",
+          });
+          // console.log(this.arr[0].text_prop);
+          this.$axios
+            .post("/api/v1/tms/deleteApproveWagonPlease/" + resultId)
+            .then(() => {
+              this.$router.go(0);
+            });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "取消删除!",
+          });
+        });
+    },
+    // 下发
+    sendClick(resultId) {
+      this.$confirm("是否下发", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+        center: true,
+      })
+        .then(() => {
+          this.$message({
+            type: "success",
+            message: "下发成功!",
+          });
+          // console.log(this.arr[0].text_prop);
+          this.$axios
+            .post("/api/v1/tms/sendWagonPlease/" + resultId)
+            .then(() => {
+              this.$router.go(0);
+            });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "取消下发!",
+          });
+        });
+    },
+
+    //新增
+    insertClick() {
+      this.$router.push("/importedMine/addWagonPlease/");
+    },
+    //修改
+    updateClick(resultId) {
+      this.$router.push("/importedMine/editWagonPlease/" + resultId);
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+.homeworkPath {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 96 - 0
src/views/TMS/importedMine/components/wagonUnLoad.vue

@@ -0,0 +1,96 @@
+<template>
+  <!-- 卸车作业页面 -->
+  <div class="homeworkPath">
+    <div class="top">
+      <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="btnclick(0)">
+        <i class="el-icon-plus"></i>新增
+      </el-button>
+    </div>
+
+    <dilTable v-bind.sync="option">
+      <el-table-column fixed="right" label="操作" width="100">
+        <template slot-scope="scope">
+          <el-button
+            @click="click(scope.row.unloadingId)"
+            type="text"
+            size="small"
+            >修改</el-button
+          >
+          <el-button
+            type="text"
+            size="small"
+            @click="deleteclick(scope.row.unloadingId)"
+            >删除</el-button
+          >
+        </template>
+      </el-table-column>
+    </dilTable>
+  </div>
+</template>
+
+
+<script>
+export default {
+  name: "wagonUnload",
+  data() {
+    return {
+      input: "",
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/tms/getTmstrainWagonUnLoad?apiId=60&resultType=1",
+      },
+    };
+  },
+  methods: {
+    onclick() {
+      this.option.requestUrl = "/api/v1/tms/getTmstrainWagonUnLoad?apiId=60&resultType=1&con="+this.input;
+    },
+    btnclick() {
+      this.$router.push("/importedMine/addWagonUnLoad");
+    },
+    click(unloadingId) {
+      this.$router.push("/importedMine/editWagonUnLoad/" + unloadingId);
+    },
+    deleteclick(scope) {
+      let unloadingId = scope;
+      this.$confirm("是否删除", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+        center: true,
+      })
+        .then(() => {
+          this.$message({
+            type: "success",
+            message: "删除成功!",
+          });
+          this.$axios
+            .post(
+              "/api/v1/tms/deleteTmstrainWagonUnLoadResultByUnLoadingId?unloadingId=" +
+                unloadingId
+            )
+            .then(() => {
+              this.$router.go(0);
+            });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "取消删除!",
+          });
+        });
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+.homeworkPath {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

+ 125 - 0
src/views/TMS/importedTruck/components/assignmentPlan.vue

@@ -0,0 +1,125 @@
+<template>
+  <!-- 分派计划 -->
+  <div class="homeworkPath">
+    <div class="top">
+      <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>
+    </div>
+    <el-tabs v-model="activeName" @tab-click="handleClick">
+      <!--接收 -->
+      <el-tab-pane label="待接收" name="zero">
+        <dilTable v-bind.sync="zero" ref="table">
+          <el-table-column fixed="right" label="操作" width="80">
+            <template slot-scope="scope">
+              <el-button @click="receiveClick(scope.row.planId)" type="text" size="small">
+                接收
+              </el-button>
+            </template>
+          </el-table-column>
+        </dilTable>
+      </el-tab-pane>
+      <!-- 待分派 -->
+      <el-tab-pane label="待分解" name="first">
+        <dilTable v-bind.sync="option1" ref="table">
+          <el-table-column fixed="right" label="操作" width="80">
+            <template slot-scope="scope">
+              <el-button
+                @click="seeClick(scope.row.planId)"
+                type="text"
+                size="small"
+              >
+                查看详情
+              </el-button>
+            </template>
+          </el-table-column>
+        </dilTable>
+      </el-tab-pane>
+      <!-- 已分派 -->
+      <el-tab-pane label="已分解" name="second">
+        <dilTable v-bind.sync="option2"> </dilTable>
+      </el-tab-pane>
+    </el-tabs>
+  </div>
+</template>
+<script>
+export default {
+  name: "wagonPlease",
+  data() {
+    return {
+      status: "",
+      input: "",
+      activeName: "zero",
+      zero:{
+          requestUrl: "/api/v1/ams/getAllPurPlan?apiId=79&status=1",
+      },
+      option1: {
+        //待分解
+        requestUrl:
+          "/api/v1/ams/getDecomposedPlan?apiId=82&status=2&planStatus=0",
+      },
+      option2: {
+        //已分解
+        requestUrl:
+          "/api/v1/ams/getDecomposedPlan?apiId=82&status=2&planStatus=1",
+      },
+    };
+  },
+  methods: {
+    // 接收
+    receiveClick(planId) {
+      this.$confirm("是否接收", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+        center: true,
+      })
+        .then(() => {
+          this.$message({
+            type: "success",
+            message: "接收成功!",
+          });
+          // console.log(this.arr[0].text_prop);
+          this.$axios
+            .post(
+              "/api/v1/ams/receptionPurPlan/" + planId
+            )
+            .then(() => {
+              this.zero.requestUrl = "/api/v1/ams/getAllPurPlan?apiId=79&status=1&q=1"
+            });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "取消接收!",
+          });
+        });
+    },
+    onclick() {
+      if(this.activeName=='zero'){
+        this.zero.requestUrl = "/api/v1/ams/getAllPurPlan?apiId=79&status=1&con=" + this.input
+      }else if(this.activeName == 'first'){
+        this.option1.requestUrl =
+        "/api/v1/ams/getDecomposedPlan?apiId=82&status=2&con=" + this.input;
+      }else{
+        this.option2.requestUrl = "/api/v1/ams/getDecomposedPlan?apiId=82&status=2&planStatus=1&con=" + this.input
+      }
+      },
+    seeClick(planId) {
+      console.log(planId);
+      this.$router.push("/importedTruckOrder/breakdownPlanAdd/" + planId);
+    },
+    handleClick(tab, event) {
+      console.log(tab, event);
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+.homeworkPath {
+  .top {
+    padding: 1.25rem 1.875rem;
+  }
+}
+</style>

Alguns ficheiros não foram mostrados porque muitos ficheiros mudaram neste diff