diff --git a/src/components/newTablecmt/newTablecmt.vue b/src/components/newTablecmt/newTablecmt.vue
new file mode 100644
index 00000000..f3a045cb
--- /dev/null
+++ b/src/components/newTablecmt/newTablecmt.vue
@@ -0,0 +1,665 @@
+<template>
+  <div class="maboxhi" id="bodys">
+    <el-table
+      :data="tableData"
+      style="width: 100%"
+      :show-summary="shownm"
+      :summary-method="getSummaries"
+      v-loading="loading"
+      @selection-change="handleSelectionChange"
+      border
+      height="100%"
+      :row-class-name="tableRowClassName"
+      ref="selecttable"
+    >
+      <el-table-column
+        :type="column.type == 0 ? 'selection' : ''"
+        :min-width="column.width"
+        v-for="(column, index) in newcolumnList"
+        :key="column.prop"
+        :prop="column.prop"
+        :label="column.label"
+        :fixed="column.fixed"
+        :sortable="column.sortable"
+        :selectable="isselectfun"
+        v-show="column.head"
+      >
+        <el-table-column
+          :type="column.type == 12 ? 'index' : ''"
+          :min-width="column.width"
+          :prop="column.prop"
+          :label="column.label"
+          v-if="column.type != 0"
+          flexible
+          show-overflow-tooltip
+        >
+          <template #header>
+            <!-- <el-text class="mx-1">{{ column.label }}</el-text> -->
+            <el-input
+              v-if="column.type == 2"
+              v-model="column.values"
+              clearable
+              :placeholder="`请输入${column.label}`"
+              @change="inputchange($event, column)"
+              @blur="inputchange($event, column)"
+              @clear="inputclear($event, column)"
+            />
+            <el-select
+              v-if="column.type == 3"
+              v-model="column.values"
+              class="m-2 selectbr"
+              clearable
+              :placeholder="`请选择${column.label}`"
+              @change="selectchange($event, column)"
+              @clear="selectclear($event, column)"
+            >
+              <el-option
+                v-for="item in column.checkarr"
+                :key="item.value"
+                :label="item.label"
+                :value="item.value"
+              />
+            </el-select>
+            <el-date-picker
+              v-model="column.values"
+              v-if="column.type == 4"
+              type="date"
+              clearable
+              style="width: auto"
+              :placeholder="`请选择${column.label}`"
+              @change="timechange($event, column)"
+              @clear="timeclear($event, column)"
+            />
+            <el-date-picker
+              v-model="column.values"
+              v-if="column.type == 5"
+              type="datetime"
+              clearable
+              style="width: auto"
+              :placeholder="`请选择${column.label}`"
+              format="YYYY/MM/DD HH:mm:ss"
+              @change="timechange($event, column)"
+              @clear="timeclear($event, column)"
+            />
+          </template>
+
+          <template #default="scope">
+            <el-text
+              class="mx-2 tabculconte"
+              v-if="Number(column.type) < 6 && Number(column.type) > 0"
+              >{{ scope.row[column.prop] }}</el-text
+            >
+            <el-switch
+              @change="makeCargo(scope.row, column)"
+              v-if="column.type == 11"
+              v-model="scope.row[column.prop]"
+            />
+            <el-text
+              style=""
+              class="mx-2 tabculconte colors"
+              v-if="column.type == 9"
+              @click="godowns(scope.row[column.downprop])"
+              >{{ scope.row[column.prop] }}</el-text
+            >
+            <el-input
+              @blur="handleNumberRange(column, scope.row)"
+              v-if="column.type == 10"
+              v-model="scope.row[column.prop]"
+              type="number"
+              :min="0"
+              :max="scope.row.residueNumber"
+            ></el-input>
+            <div class="slotbuts" v-if="column.type == 6">
+              <slot v-if="column.type == 6" :scope="scope"> </slot>
+            </div>
+            <el-image
+              preview-teleported
+              v-if="column.type == 7"
+              style="width: 60px; height: 60px; margin-left: 10px"
+              :initial-index="index"
+              :z-index="100"
+              v-for="(item, index) in scope.row[column.prop].split(',')"
+              :src="item"
+              :preview-src-list="scope.row[column.prop].split(',')"
+            />
+          </template>
+        </el-table-column>
+
+        <template #header>
+          <div style="display: inline-block">
+            <div class="tilbox">
+              <el-text class="mx-1 tabtitles" @click.stop @dblclick.stop="copyalls(column)">{{
+                column.label
+              }}</el-text>
+            </div>
+          </div>
+        </template>
+      </el-table-column>
+    </el-table>
+  </div>
+</template>
+
+<script lang="ts" setup>
+import { computed, ref, watchEffect, getCurrentInstance, onMounted, defineExpose } from 'vue';
+import type { PropType } from 'vue';
+const { proxy } = getCurrentInstance() as any;
+const selecttable = ref(null);
+/**
+ * 对应通知事件
+ * inputTxt:输入框输入的确认事件
+ * timeCheck:时间选择器选择事件
+ * selectCheck:下拉框选中事件
+ * selection:勾选框事件
+ */
+onMounted(() => {
+  function getWinHight() {
+    var windowHight = 0;
+    if (document.body.clientHeight && document.documentElement.clientHeight) {
+      windowHight =
+        document.body.clientHeight < document.documentElement.clientHeight
+          ? document.body.clientHeight
+          : document.documentElement.clientHeight;
+    } else {
+      // windowHight=(document.body.clientHeight>document.documentElement.clientHeight)?document.body.clientHeight:document.documentElement.clientHeight;
+    }
+    // return windowHight;
+    return document.documentElement.clientHeight;
+  }
+
+  var bodyContent = document.querySelectorAll('.maboxhi');
+  const _height = getWinHight();
+  console.log('bodyContent :>> ', bodyContent);
+  // 设置列表的高度
+  bodyContent.forEach(val => {
+    val.style.height = _height - val.getBoundingClientRect().top - 65 + 'px';
+  });
+});
+interface TableColumnType {
+  /** 表格列的key */
+  prop: string;
+  /** 表格列的名字 */
+  label: string;
+  /**
+   * 对应列表头的类型
+   * 0:直接显示为单选,prop,label,全部传空
+   * 1:普通表格,正常显示
+   * 2:带输入框表格
+   * 3:带下拉框表格
+   * 4:带日期选择器列
+   * 5:带日期时间选择器
+   * 6:操作栏,prop,label,全部传空
+   * 7:图片
+   * 8:带背景的文字
+   * 9:下载附件
+   * 10.输入框的表格内容
+   * 11.开关类型
+   */
+  type: number | string;
+  /** 用于接受表头的值 */
+  values: number | string;
+  /** 表头宽度 number string undefined */
+  width: number | string | undefined;
+  /** 下拉框可选项 */
+  checkarr?: {
+    value: string | number;
+    label: string | number;
+  }[];
+  /** 是否固定表头
+   * true false
+   * left right
+   */
+  fixed: boolean | string;
+  /** 是否统计
+   * true false 或者直接不写该参数
+   */
+  isshowSummary?: boolean;
+  /** 是否排序
+   * true false 或者直接不写该参数
+   */
+  sortable?: boolean;
+  /** 是否显示列
+   * true false 或者直接不写该参数
+   */
+  head?: boolean;
+  /** 是否文字超出隐藏
+   * 默认超出隐藏
+   * true是不隐藏
+   * false 隐藏
+   */
+  isextrahide?: boolean;
+  /** 下载文件的url的key
+   */
+  downprop?: string;
+  /** 输入框内容需要小于的对应字段
+   */
+  lessThanNum?: string;
+}
+interface TableDataType {
+  [key: string]: any;
+}
+let props = defineProps({
+  columnList: {
+    type: Array as PropType<TableColumnType[]>,
+    required: true,
+  },
+  tableData: {
+    type: Array as PropType<TableDataType[]>,
+    required: true,
+  },
+  loading: {
+    type: Boolean as PropType<boolean>,
+    required: true,
+  },
+  //回显勾选的数据列表
+  checkselect: {
+    type: Array as PropType<TableDataType[]>,
+    required: false,
+  },
+  //是否可选择的函数
+  isselectfun: {
+    type: Function as PropType<(row: TableDataType) => boolean>,
+    required: false,
+    default: null,
+  },
+});
+let selectarr = ref([]);
+const tableRowClassName = ({ row, rowIndex }: { row: TableDataType; rowIndex: number }) => {
+  let sfcheck = false;
+  selectarr.value.map(item => {
+    if (item == row) {
+      sfcheck = true;
+    }
+  });
+  if (sfcheck) {
+    return 'table-SelectedRow-bgcolor';
+  }
+  return '';
+};
+let emit = defineEmits(['inputTxt', 'timeCheck', 'selectCheck', 'selection', 'makeCargo']);
+let newcolumnList = ref<TableColumnType[]>([]);
+watchEffect(() => {
+  newcolumnList.value = [];
+  props.columnList.map(item => {
+    if (!item.head) {
+      newcolumnList.value.push(item);
+    }
+  });
+});
+onMounted(() => {
+  if (props.checkselect) {
+    props.checkselect.map(item => {
+      if (props.isselectfun) {
+        if (props.isselectfun(item)) {
+          selecttable.value.toggleRowSelection(item, true);
+        }
+      } else {
+        selecttable.value.toggleRowSelection(item, true);
+      }
+    });
+  }
+});
+function godowns(url) {
+  let a = document.createElement('a'); //创建一个a标签用来跳转
+  a.href = url; //myurl 是后端返回的下载地址
+  // a.target = '_blank';
+  a.download = 'xixi.zip'; //设置下载文件的文件名和文件格式
+  document.body.appendChild(a); //将标签DOM,放置页面
+  a.click();
+  window.URL.revokeObjectURL(url); //释放 url 对象内存
+  document.body.removeChild(a);
+}
+let shownm = ref(false);
+
+function copyalls(column: TableColumnType) {
+  const _isReturn = column.type == 1 || column.type == 2 || column.type == 3;
+  if (!_isReturn) return;
+  let text = '';
+  props.tableData.map((item, index) => {
+    if (index < props.tableData.length - 1) {
+      if (item[column.prop]) {
+        text += `${item[column.prop]}\n`;
+      }
+    } else {
+      if (item[column.prop]) {
+        text += `${item[column.prop]}`;
+      } else {
+      }
+    }
+  });
+  copyContent(text);
+}
+function handleNumberRange(column: TableColumnType, row: TableDataType) {
+  row[column.prop] = row[column.prop].replace(/[^\.\d]/g, ''); //替换掉与数字无关的字符(中英文与符号都会被替换掉,只留下数字,此时值类型为字符串)
+  if (row[column.prop]) {
+    //如果替换后还有值
+    row[column.prop] = parseInt(row[column.prop]); //把字符型转成整数型
+  }
+
+  // if (column.lessThanNum) {
+  //   if (row[column.prop] > row[column.lessThanNum]) {
+  //     row[column.prop] = row[column.lessThanNum];
+  //     proxy.$message({
+  //       type: 'error',
+  //       message: '数量不能大于可用数量',
+  //     });
+  //   }
+  // }
+  // 上架数量判断
+  if (row.residueNumber) {
+    if (row.enterNum > row.residueNumber) {
+      proxy.$message({
+        type: 'error',
+        message: '数量不能大于可上架总数,已调整为最大数量!',
+      });
+      row.enterNum = row.residueNumber;
+    }
+  }
+  // 下架数量判断
+  if (row.num) {
+    if (row.enterNum > row.num) {
+      proxy.$message({
+        type: 'error',
+        message: '数量不能大于可下架总数,已调整为最大数量!',
+      });
+      row.enterNum = row.num;
+    }
+  }
+
+  console.log(row, 'row');
+}
+function handleEdit(index: number, row: TableDataType) {
+  console.log(index, row);
+}
+function makeCargo(value, column: TableColumnType) {
+  emit('makeCargo', value, column);
+}
+function inputchange(value, column: TableColumnType) {
+  if (typeof value == 'string') {
+    console.log(value, column);
+    emit('inputTxt', value, column);
+  }
+}
+function selectchange(value, column: TableColumnType) {
+  console.log(value, column);
+  emit('selectCheck', value, column);
+}
+function timechange(value, column: TableColumnType) {
+  console.log(value, column);
+  emit('timeCheck', value, column);
+}
+const handleSelectionChange = (param: TableDataType[]) => {
+  // console.log(param)
+  selectarr.value = param;
+  emit('selection', param);
+};
+function inputclear(value, column: TableColumnType) {
+  console.log('', column);
+  emit('inputTxt', '', column);
+}
+function selectclear(value, column: TableColumnType) {
+  console.log('', column);
+  emit('selectCheck', '', column);
+}
+function timeclear(value, column: TableColumnType) {
+  console.log('', column);
+  emit('timeCheck', '', column);
+}
+function handleDelete(index: number, row: TableDataType) {
+  console.log(index, row);
+}
+const getSummaries = (param: any) => {
+  const { columns, data } = param;
+  let newarr = [];
+  let tji = 0;
+  console.log(columns, data);
+  columns.map((item, index) => {
+    if (index == 0) {
+      newarr[index] = '总计';
+      return;
+    }
+    tji = 0;
+    if (props.columnList[index]?.isshowSummary) {
+      data.map(ite => {
+        tji += Number(ite[props.columnList[index]?.prop] || 0);
+      });
+      newarr[index] = tji;
+      // shownm.value=true
+    } else {
+      newarr[index] = null;
+    }
+  });
+  // console.log(columns)
+  console.log(newarr);
+  return newarr;
+};
+watchEffect(() => {
+  props.columnList.map(item => {
+    if (item.isshowSummary) {
+      shownm.value = true;
+    }
+  });
+});
+// 复制文本内容
+function copyContent(content: string) {
+  // 复制结果
+  let copyResult = true;
+  // 设置想要复制的文本内容
+  const text = content || '让我们一起快乐的敲代码吧~';
+  // 判断是否支持clipboard方式
+  if (!!window.navigator.clipboard) {
+    // 利用clipboard将文本写入剪贴板(这是一个异步promise)
+    window.navigator.clipboard
+      .writeText(text)
+      .then(res => {
+        proxy.$message({
+          type: 'success',
+          message: '复制成功',
+        });
+        // 返回复制操作的最终结果
+        return copyResult;
+      })
+      .catch(err => {
+        copyResult = false;
+        console.log('复制失败', err);
+        proxy.$message({
+          type: 'error',
+          message: '复制失败',
+        });
+        // 返回复制操作的最终结果
+        return copyResult;
+      });
+  } else {
+    // 不支持clipboard方式 则采用document.execCommand()方式
+    // 创建一个input元素
+    let inputDom = document.createElement('textarea');
+    // 设置为只读 防止移动端手机上弹出软键盘
+    inputDom.setAttribute('readonly', 'readonly');
+    // 给input元素赋值
+    inputDom.value = text;
+    // 将创建的input添加到body
+    document.body.appendChild(inputDom);
+    // 选中input元素的内容
+    inputDom.select();
+    // 执行浏览器复制命令
+    // 复制命令会将当前选中的内容复制到剪切板中(这里就是创建的input标签中的内容)
+    // Input要在正常的编辑状态下原生复制方法才会生效
+    const result = document.execCommand('copy');
+    // 判断是否复制成功
+    if (result) {
+      proxy.$message({
+        type: 'success',
+        message: '复制成功',
+      });
+    } else {
+      console.log('复制失败');
+      proxy.$message({
+        type: 'error',
+        message: '复制失败',
+      });
+      copyResult = false;
+    }
+    // 复制操作后再将构造的标签 移除
+    document.body.removeChild(inputDom);
+    // 返回复制操作的最终结果
+    return copyResult;
+  }
+}
+
+defineExpose({});
+</script>
+<style lang="scss" scope>
+// :root{
+//   --el-checkbox-checked-bg-color:'#D3832A';
+//   --el-checkbox-checked-input-border-color:'#D3832A';
+// }
+
+.el-table {
+  //悬停
+  --el-table-row-hover-bg-color: #d3832a;
+}
+
+// .el-table .warning-row {
+//   --el-table-tr-bg-color: var(--el-color-warning-light-9);
+// }
+// .el-table .success-row {
+//   --el-table-tr-bg-color: var(--el-color-success-light-9);
+// }
+.maboxhi {
+  width: 100%;
+  // min-height: 950px;
+  // height: 841px;
+  // flex:1;
+  // min-height: 100%;
+}
+.on {
+  overflow: hidden;
+  white-space: nowrap;
+  text-overflow: ellipsis;
+  font-size: 12px !important;
+}
+.selectbr {
+  border: none !important;
+  font-size: 12px !important;
+}
+.tabtitles {
+  color: #092c4d !important;
+  font-size: 12px !important;
+  margin-right: 5px !important;
+}
+.el-table .ascending .sort-caret.ascending {
+  border-bottom-color: #d3832a !important;
+  font-size: 12px !important;
+}
+.el-table .descending .sort-caret.descending {
+  border-top-color: #d3832a !important;
+  font-size: 12px !important;
+}
+.tabculconte {
+  color: #333333 !important;
+  font-size: 12px !important;
+}
+.slotbuts {
+  height: 25px;
+  display: flex;
+  align-items: center;
+  justify-content: center;
+  font-size: 12px !important;
+}
+.slotbuts .el-text {
+  color: #d3832a !important;
+  margin-right: 10px !important;
+  cursor: pointer;
+  font-size: 12px !important;
+  &:nth-last-child(1) {
+    margin-right: 0px !important;
+  }
+}
+.el-popper.is-pure.is-light.el-dropdown__popper .el-text {
+  color: #d3832a !important;
+  margin-right: 10px !important;
+  cursor: pointer;
+  font-size: 12px !important;
+  &:nth-last-child(1) {
+    margin-right: 0px !important;
+  }
+}
+.el-table .el-input__inner {
+  height: 23px !important;
+}
+// .el-checkbox__input.is-checked .el-checkbox__inner{
+//   background-color: #D3832A !important;
+//   border-color: #D3832A !important;
+// }
+// .is .el-checkbox__input.is-checked .el-checkbox__inner{
+//   background-color: #D3832A !important;
+//   border-color: #D3832A !important;
+// }
+// .is-checked .el-checkbox__inner:hover{
+//   border-color: #D3832A !important;
+// }
+// .el-checkbox__input.is-indeterminate .el-checkbox__inner{
+//   background-color: #D3832A !important;
+//   border-color: #D3832A !important;
+// }
+.el-table .el-table__cell {
+  padding: 0px !important;
+}
+.el-checkbox__input.is-checked .el-checkbox__inner,
+.el-checkbox__input.is-indeterminate .el-checkbox__inner {
+  border-color: #d3832a !important;
+  background-color: #d3832a !important;
+}
+.el-checkbox__input.is-focus .el-checkbox__inner {
+  border-color: #d3832a !important;
+}
+//修改选中后文本的颜色
+.el-checkbox__input.is-checked + .el-checkbox__label {
+  color: #d3832a !important;
+}
+.el-checkbox__inner:hover {
+  border-color: #d3832a !important;
+  font-size: 12px !important;
+}
+.table-SelectedRow-bgcolor {
+  > td {
+    background-color: #f7e8d7 !important;
+  }
+}
+.colors {
+  color: #409eff !important;
+  cursor: pointer !important;
+}
+.el-table .cell {
+  line-height: 22px !important;
+}
+.el-table .el-input__inner {
+  font-size: 12px !important;
+}
+.el-table__body tr.hover-row.current-row > td,
+.el-table__body tr.hover-row.el-table__row--striped.current-row > td,
+.el-table__body tr.hover-row.el-table__row--striped > td,
+.el-table__body tr.hover-row > td {
+  background-color: #d3d8e1 !important;
+}
+.el-date-editor.el-input,
+.el-date-editor.el-input__wrapper {
+  height: 23px !important;
+}
+.copys {
+  display: inline-block;
+  margin-left: 5px;
+  padding-top: 5px;
+  margin-right: 5px;
+}
+.tilbox {
+  display: flex;
+  align-items: center;
+}
+
+.el-table .el-popper {
+  max-width: 20% !important;
+}
+.el-input {
+  // width: 200px !important;
+}
+</style>
diff --git a/src/components/tablecmt/tablecmt.vue b/src/components/tablecmt/tablecmt.vue
index 56c6f607..6bca90a5 100644
--- a/src/components/tablecmt/tablecmt.vue
+++ b/src/components/tablecmt/tablecmt.vue
@@ -39,7 +39,7 @@
           <template #header>
             <!-- <el-text class="mx-1">{{ column.label }}</el-text> -->
             <el-input
-              v-if="column.type == 2"
+              v-if="column.type == 2 || column.type == 13"
               v-model="column.values"
               clearable
               :placeholder="`请输入${column.label}`"
@@ -121,8 +121,8 @@
               :min="0"
               :max="scope.row.residueNumber"
             ></el-input>
-            <div class="slotbuts" v-if="column.type == 6">
-              <slot v-if="column.type == 6" :scope="scope"> </slot>
+            <div class="slotbuts" v-if="column.type == 6 || column.type == 13">
+              <slot v-if="column.type == 6 || column.type == 13" :scope="scope"> </slot>
             </div>
             <el-image
               preview-teleported
@@ -204,7 +204,10 @@ onMounted(() => {
   console.log('bodyContent :>> ', bodyContent);
   // 设置列表的高度
   bodyContent.forEach(val => {
+    console.log('_height :>> ', _height);
+    console.log('val.getBoundingClientRect().top :>> ', val);
     val.style.height = _height - val.getBoundingClientRect().top - 65 + 'px';
+    // if (val.style.height === '890px') val.style.height = '600px';
   });
 });
 interface TableColumnType {
@@ -226,6 +229,8 @@ interface TableColumnType {
    * 9:下载附件
    * 10.输入框的表格内容
    * 11.开关类型
+   * 12.序号
+   * 13.带搜索的自定义列表
    */
   type: number | string;
   /** 用于接受表头的值 */
diff --git a/src/option/aftersales/aftersalesWorkOrder.js b/src/option/aftersales/aftersalesWorkOrder.js
index 9210455f..e537ae60 100644
--- a/src/option/aftersales/aftersalesWorkOrder.js
+++ b/src/option/aftersales/aftersalesWorkOrder.js
@@ -89,18 +89,12 @@ export default {
       hide: true,
     },
     {
-      label: "工单异常类型;货损,少货,窜货,加急,其他",
+      label: "异常类型 ",
       prop: "workOrderType",
       search: true,
     },
     {
-      label: "发起工单标识;PDA,PC",
-      prop: "initiationIdentification",
-      display: false,
-      hide: true,
-    },
-    {
-      label: "发现节点;提货,发货,干线,库内,配送,其他,签收(PC),安装(PC)",
+      label: "发现节点 ",
       prop: "discoveryNode",
       search: true,
     },
@@ -119,7 +113,7 @@ export default {
       search: true,
     },
     {
-      label: "车次号 (干线卸车环节)",
+      label: "车次号",
       prop: "trainNumber",
     },
     {
@@ -131,7 +125,7 @@ export default {
       prop: "secondary",
     },
     {
-      label: "车辆路线;车次号、通过车次号自动带出车辆线路",
+      label: "车辆路线 ",
       prop: "vehicleRoute",
     },
     {
@@ -139,11 +133,11 @@ export default {
       prop: "deliverGoodsTime",
     },
     {
-      label: "发现时间 (库内作业环节,配送装车环节)",
+      label: "发现时间",
       prop: "discoveryTime",
     },
     {
-      label: "入库时间(库内作业环节)",
+      label: "入库时间",
       prop: "warehousingTime",
     },
     {
@@ -155,29 +149,21 @@ export default {
       prop: "remarks",
     },
     {
-      label: "配送时间(配送装车环节)",
+      label: "配送时间",
       prop: "deliveryTime",
     },
     {
-      label: "配送司机(配送装车环节)",
+      label: "配送司机",
       prop: "deliveryDriver",
     },
     {
       label: "工单状态",
       prop: "workOrderStatus",
     },
-    {
-      label: "归属客服ID",
-      prop: "customerServiceId",
-    },
     {
       label: "归属客服名称",
       prop: "customerServiceName",
     },
-    {
-      label: "商场ID",
-      prop: "waybillMallId",
-    },
     {
       label: "完结时间",
       prop: "overTime",
@@ -186,10 +172,6 @@ export default {
       label: "异常问题描述",
       prop: "problemDescription",
     },
-    {
-      label: "仓库ID",
-      prop: "warehouseId",
-    },
     {
       label: "责任人 (库内作业环节)",
       prop: "personResponsible",
@@ -209,12 +191,6 @@ export default {
     {
       label: "财务入账时间",
       prop: "entryTime",
-    },
-    {
-      label: "操作人",
-      prop: "operator",
-      display: false,
-      hide: true,
-    },
+    }
   ]
 }
diff --git a/src/option/distribution/arteryDistrilbutionBillLadingList.js b/src/option/distribution/arteryDistrilbutionBillLadingList.js
index dd4b2bb2..388d9a19 100644
--- a/src/option/distribution/arteryDistrilbutionBillLadingList.js
+++ b/src/option/distribution/arteryDistrilbutionBillLadingList.js
@@ -1,3 +1,4 @@
+/** 自提表格 */
 export const columnList = [
   {
     prop: '',
@@ -17,9 +18,9 @@ export const columnList = [
   {
     prop: 'pickupBatch',
     label: '提货批次',
-    type: 2,
+    type: 13,
     values: '',
-    width: '130',
+    width: '180',
     checkarr: [],
     fixed: true,
     sortable: true,
@@ -27,7 +28,7 @@ export const columnList = [
   },
   {
     prop: 'serviceNumber',
-    label: '服务号',
+    label: '车牌',
     type: 2,
     values: '',
     width: '130',
@@ -37,7 +38,7 @@ export const columnList = [
   },
   {
     prop: 'waybillNumber',
-    label: '运单号',
+    label: '司机名称',
     type: 2,
     values: '',
     width: '130',
@@ -47,7 +48,7 @@ export const columnList = [
   },
   {
     prop: 'consigneeUnit',
-    label: '收货单位',
+    label: '司机电话',
     type: 2,
     values: '',
     width: '130',
@@ -57,7 +58,7 @@ export const columnList = [
   },
   {
     prop: 'customerName',
-    label: '收货人',
+    label: '仓库名称',
     type: 2,
     values: '',
     width: '130',
@@ -67,28 +68,27 @@ export const columnList = [
   },
   {
     prop: 'customerTelephone',
-    label: '联系电话',
-    type: 2,
+    label: '线路标题',
+    type: 1,
     values: '',
-    width: '130',
+    width: '180',
     checkarr: [],
     fixed: false,
     sortable: true,
   },
   {
     prop: 'warehouse',
-    label: '仓库',
+    label: '线路节点数',
     type: 2,
     values: '',
     width: '130',
     checkarr: [],
     fixed: false,
     sortable: true,
-    head: true,
   },
   {
     prop: 'warehouseEntryTime',
-    label: '入库时间',
+    label: '提货开始时间',
     type: 4,
     values: '',
     width: '130',
@@ -98,8 +98,8 @@ export const columnList = [
   },
   {
     prop: 'collectFee',
-    label: '到付运费',
-    type: 1,
+    label: '提货完成时间',
+    type: 4,
     values: '',
     width: '130',
     checkarr: [],
@@ -108,8 +108,8 @@ export const columnList = [
   },
   {
     prop: 'transport',
-    label: '搬运费',
-    type: 1,
+    label: '预计数量',
+    type: 2,
     values: '',
     width: '130',
     checkarr: [],
@@ -118,8 +118,8 @@ export const columnList = [
   },
   {
     prop: 'storageFee',
-    label: '仓储费',
-    type: 1,
+    label: '状态',
+    type: 3,
     values: '',
     width: '130',
     checkarr: [],
@@ -128,8 +128,8 @@ export const columnList = [
   },
   {
     prop: 'forklift',
-    label: '叉车费',
-    type: 1,
+    label: '计费模式',
+    type: 3,
     values: '',
     width: '130',
     checkarr: [],
@@ -138,28 +138,28 @@ export const columnList = [
   },
   {
     prop: 'otherFee',
-    label: '其他增值费用',
-    type: 1,
+    label: '提货费用',
+    type: 2,
+    values: '',
+    width: '150',
+    checkarr: [],
+    fixed: false,
+    sortable: true,
+  },
+  {
+    prop: 'pickUpTime',
+    label: '备注',
+    type: 2,
     values: '',
     width: '150',
     checkarr: [],
     fixed: false,
     sortable: true,
   },
-  // {
-  //   prop: 'pickUpTime',
-  //   label: '总费用',
-  //   type: 1,
-  //   values: '',
-  //   width: '150',
-  //   checkarr: [],
-  //   fixed: false,
-  //   sortable: true,
-  // },
   {
     prop: 'totalNumber',
-    label: '应提件数',
-    type: 1,
+    label: '承运商',
+    type: 2,
     values: '',
     width: '130',
     checkarr: [],
@@ -168,8 +168,8 @@ export const columnList = [
   },
   {
     prop: 'stopNum',
-    label: '实提件数',
-    type: 1,
+    label: '单数',
+    type: 2,
     values: '',
     width: '130',
     checkarr: [],
@@ -178,7 +178,7 @@ export const columnList = [
   },
   {
     prop: 'brand',
-    label: '品牌',
+    label: '件数',
     type: 2,
     values: '',
     width: '130',
@@ -188,7 +188,7 @@ export const columnList = [
   },
   {
     prop: 'productInformation',
-    label: '货品信息',
+    label: '重量',
     type: 2,
     values: '',
     width: '130',
@@ -198,7 +198,7 @@ export const columnList = [
   },
   {
     prop: 'customerTelephone',
-    label: '提货手机',
+    label: '体积',
     type: 2,
     values: '',
     width: '130',
@@ -208,7 +208,7 @@ export const columnList = [
   },
   {
     prop: 'consignee',
-    label: '提货人',
+    label: '创建人',
     type: 2,
     values: '',
     width: '130',
@@ -216,67 +216,349 @@ export const columnList = [
     fixed: false,
     sortable: false,
   },
+  // {
+  //   prop: '',
+  //   label: '操作',
+  //   type: 6,
+  //   values: '',
+  //   width: '200',
+  //   checkarr: [],
+  //   fixed: 'right',
+  //   hide: true,
+  // },
+  // 更多列的配置...
+];
+
+/** 自提详情内表格 */
+export const columnDetailList = [
+  {
+    prop: '',
+    label: '复选框',
+    type: 0,
+    width: 55,
+    fixed: true,
+  },
+  {
+    prop: '',
+    label: '序号',
+    type: 12,
+    values: '',
+    width: 55,
+    fixed: true,
+  },
   {
-    prop: 'pickUpPlate',
+    prop: 'pickupBatch',
+    label: '提货批次',
+    type: 2,
+    values: '',
+    width: '180',
+    checkarr: [],
+    fixed: true,
+    sortable: true,
+    head: false,
+  },
+  {
+    prop: 'serviceNumber',
+    label: '提货司机',
+    type: 2,
+    values: '',
+    width: '130',
+    checkarr: [],
+    fixed: false,
+    sortable: true,
+  },
+  {
+    prop: 'waybillNumber',
     label: '提货车牌',
     type: 2,
     values: '',
     width: '130',
     checkarr: [],
     fixed: false,
-    sortable: false,
+    sortable: true,
   },
   {
-    prop: 'deliveryDocument',
-    label: '提货证件',
+    prop: 'consigneeUnit',
+    label: '运单号',
     type: 2,
     values: '',
     width: '130',
     checkarr: [],
     fixed: false,
-    sortable: false,
+    sortable: true,
   },
   {
-    prop: 'certificateTypeName',
-    label: '证件类型',
-    type: 3,
+    prop: 'customerName',
+    label: '合同号',
+    type: 2,
     values: '',
     width: '130',
     checkarr: [],
     fixed: false,
-    sortable: false,
+    sortable: true,
   },
   {
-    prop: 'conditionName',
-    label: '状态',
-    type: 1,
+    prop: 'customerTelephone',
+    label: '目的地',
+    type: 2,
+    values: '',
+    width: '180',
+    checkarr: [],
+    fixed: false,
+    sortable: true,
+  },
+  {
+    prop: 'warehouse',
+    label: '入库类型',
+    type: 2,
     values: '',
     width: '130',
     checkarr: [],
     fixed: false,
-    sortable: false,
+    sortable: true,
   },
   {
-    prop: 'totalCost',
-    label: '费用合计',
-    type: 1,
+    prop: 'warehouseEntryTime',
+    label: '是否齐套',
+    type: 2,
     values: '',
     width: '130',
     checkarr: [],
     fixed: false,
-    sortable: false,
+    sortable: true,
   },
   {
-    prop: '',
-    label: '操作',
-    type: 6,
+    prop: 'collectFee',
+    label: '托盘码',
+    type: 2,
     values: '',
-    width: '200',
+    width: '130',
     checkarr: [],
-    fixed: 'right',
-    hide: true,
+    fixed: false,
+    sortable: true,
+  },
+  {
+    prop: 'transport',
+    label: '一级品类',
+    type: 2,
+    values: '',
+    width: '130',
+    checkarr: [],
+    fixed: false,
+    sortable: true,
+  },
+  {
+    prop: 'storageFee',
+    label: '二级品类',
+    type: 2,
+    values: '',
+    width: '130',
+    checkarr: [],
+    fixed: false,
+    sortable: true,
+  },
+  {
+    prop: 'forklift',
+    label: '三级品类',
+    type: 2,
+    values: '',
+    width: '130',
+    checkarr: [],
+    fixed: false,
+    sortable: true,
+  },
+  {
+    prop: 'otherFee',
+    label: '物料名称',
+    type: 2,
+    values: '',
+    width: '150',
+    checkarr: [],
+    fixed: false,
+    sortable: true,
+  },
+  {
+    prop: 'pickUpTime',
+    label: '品牌',
+    type: 2,
+    values: '',
+    width: '150',
+    checkarr: [],
+    fixed: false,
+    sortable: true,
+  },
+  {
+    prop: 'totalNumber',
+    label: '操作仓库',
+    type: 2,
+    values: '',
+    width: '130',
+    checkarr: [],
+    fixed: false,
+    sortable: true,
+  },
+  {
+    prop: 'stopNum',
+    label: '操作人',
+    type: 2,
+    values: '',
+    width: '130',
+    checkarr: [],
+    fixed: false,
+    sortable: true,
+  },
+  {
+    prop: 'brand',
+    label: '提货扫码时间',
+    type: 4,
+    values: '',
+    width: '150',
+    checkarr: [],
+    fixed: false,
+    sortable: true,
   },
-  // 更多列的配置...
 ];
 
-export default { columnList };
+/** 新增提货选择运单列表 */
+export const columnNewList = [
+  {
+    prop: '',
+    label: '复选框',
+    type: 0,
+    width: 55,
+    fixed: true,
+  },
+  {
+    prop: '',
+    label: '序号',
+    type: 12,
+    values: '',
+    width: 55,
+    fixed: true,
+  },
+  {
+    prop: 'pickupBatch',
+    label: '运单号',
+    type: 2,
+    values: '',
+    width: '150',
+    checkarr: [],
+    fixed: true,
+    sortable: true,
+    head: false,
+  },
+  {
+    prop: 'serviceNumber',
+    label: '网点',
+    type: 2,
+    values: '',
+    width: '150',
+    checkarr: [],
+    fixed: true,
+    sortable: true,
+  },
+  {
+    prop: 'waybillNumber',
+    label: '发货人',
+    type: 2,
+    values: '',
+    width: '130',
+    checkarr: [],
+    fixed: false,
+    sortable: true,
+  },
+  {
+    prop: 'consigneeUnit',
+    label: '客户车次号',
+    type: 2,
+    values: '',
+    width: '130',
+    checkarr: [],
+    fixed: false,
+    sortable: true,
+  },
+  {
+    prop: 'customerName',
+    label: '发货单位',
+    type: 2,
+    values: '',
+    width: '130',
+    checkarr: [],
+    fixed: false,
+    sortable: true,
+  },
+  {
+    prop: 'customerTelephone',
+    label: '货物名称',
+    type: 2,
+    values: '',
+    width: '180',
+    checkarr: [],
+    fixed: false,
+    sortable: true,
+  },
+  {
+    prop: 'warehouse',
+    label: '件数',
+    type: 2,
+    values: '',
+    width: '130',
+    checkarr: [],
+    fixed: false,
+    sortable: true,
+    isshowSummary: true,
+  },
+  {
+    prop: 'warehouseEntryTime',
+    label: '重量',
+    type: 2,
+    values: '',
+    width: '130',
+    checkarr: [],
+    fixed: false,
+    sortable: true,
+    isshowSummary: true,
+  },
+  {
+    prop: 'collectFee',
+    label: '体积',
+    type: 2,
+    values: '',
+    width: '130',
+    checkarr: [],
+    fixed: false,
+    sortable: true,
+    isshowSummary: true,
+  },
+  {
+    prop: 'transport',
+    label: '运费',
+    type: 2,
+    values: '',
+    width: '130',
+    checkarr: [],
+    fixed: false,
+    sortable: true,
+    isshowSummary: true,
+  },
+  {
+    prop: 'storageFee',
+    label: '运单备注',
+    type: 2,
+    values: '',
+    width: '150',
+    checkarr: [],
+    fixed: false,
+    sortable: true,
+  },
+  {
+    prop: 'forklift',
+    label: '开单时间',
+    type: 4,
+    values: '',
+    width: '150',
+    checkarr: [],
+    fixed: false,
+    sortable: true,
+  },
+];
diff --git a/src/page/index/index.vue b/src/page/index/index.vue
index f37d7e8e..f4890d9a 100644
--- a/src/page/index/index.vue
+++ b/src/page/index/index.vue
@@ -15,9 +15,9 @@
         <!-- 主体视图层 -->
         <div id="avue-view" v-show="!isSearch" v-if="isRefresh">
           <router-view #="{ Component }">
-            <!-- <keep-alive :include="$store.getters.tagsKeep"> -->
+            <keep-alive :include="$store.getters.tagsKeep">
               <component :is="Component" />
-            <!-- </keep-alive> -->
+            </keep-alive>
           </router-view>
         </div>
       </div>
diff --git a/src/page/index/layout.vue b/src/page/index/layout.vue
index 5bf76e38..0439730f 100644
--- a/src/page/index/layout.vue
+++ b/src/page/index/layout.vue
@@ -1,7 +1,7 @@
 <template>
   <router-view #="{ Component }">
-    <!-- <keep-alive :include="$store.getters.tagsKeep"> -->
+    <keep-alive :include="$store.getters.tagsKeep">
       <component :is="Component" />
-    <!-- </keep-alive> -->
+    </keep-alive>
   </router-view>
 </template>
diff --git a/src/router/avue-router.js b/src/router/avue-router.js
index 890875fe..dad12da4 100644
--- a/src/router/avue-router.js
+++ b/src/router/avue-router.js
@@ -58,7 +58,6 @@ RouterPlugin.install = function (option = {}) {
         if (option.keepAlive) {
           meta.keepAlive = option.keepAlive;
         }
-
         const isChild = !!(children && children.length !== 0);
         const oRouter = {
           path: path,
@@ -132,7 +131,7 @@ export const formatPath = (ele, first) => {
   const propsDefault = website.menu;
   const icon = ele[propsDefault.icon];
   ele[propsDefault.icon] = !icon ? propsDefault.iconDefault : icon;
-  ele.meta = { keepAlive: ele.isOpen === 2 };
+  ele.meta = { keepAlive:  ele.isOpen == 2 };
   const iframeComponent = 'components/iframe/main';
   const iframeSrc = href => {
     return href.replace(/&/g, '#');
@@ -149,7 +148,7 @@ export const formatPath = (ele, first) => {
     ele[propsDefault.children] &&
       ele[propsDefault.children].forEach(child => {
         child.component = 'views' + child[propsDefault.path];
-        child.meta = { keepAlive: child.isOpen === 2 };
+        child.meta = { keepAlive: child.isOpen == 2 };
         if (isURL(child[propsDefault.href])) {
           let href = child[propsDefault.href];
           child[propsDefault.path] = ele[propsDefault.path] + '/' + child.code;
diff --git a/src/router/index.js b/src/router/index.js
index 8257099d..7fab1ed4 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -14,6 +14,7 @@ AvueRouter.install({
   store: Store,
   router: Router,
   i18n: i18n,
+  keepAlive: true
 });
 
 Router.$avueRouter.formatRoutes(Store.getters.menuAll, true);
diff --git a/src/router/views/index.js b/src/router/views/index.js
index 270aa327..1346879b 100644
--- a/src/router/views/index.js
+++ b/src/router/views/index.js
@@ -688,6 +688,7 @@ export default [
         name: '配送查看',
         meta: {
           i18n: 'dict',
+          keepAlive:true
         },
         props: route => ({
           name: route.query.name,
@@ -1051,20 +1052,20 @@ export default [
       },
     ],
   },
-// 下面的代码为 商场客户端的页面
+  // 下面的代码为 商场客户端的页面
 
-{
-  path: '/mail/order/add',
-  component: Layout,
-  redirect: '/mail/order/add',
-  children: [
-    {
-      path: '/mail/order/add',
-      name: '新建商场预约单',
-      component: () => import('@/views/mail/order/add.vue'),
-    },
-  ],
-},
+  {
+    path: '/mail/order/add',
+    component: Layout,
+    redirect: '/mail/order/add',
+    children: [
+      {
+        path: '/mail/order/add',
+        name: '新建商场预约单',
+        component: () => import('@/views/mail/order/add.vue'),
+      },
+    ],
+  },
 
 {
   path: '/distribution/checkInventoryTask/createTaskTemp',
diff --git a/src/store/getters.js b/src/store/getters.js
index 421bcc1a..bdb7f1fd 100644
--- a/src/store/getters.js
+++ b/src/store/getters.js
@@ -15,15 +15,12 @@ const getters = {
   lockPasswd: state => state.common.lockPasswd,
   tagList: state => state.tags.tagList,
   tagsKeep: (state, getters) => {
+    console.log(getters.tagList,'-----')
     return getters.tagList
       .filter(ele => {
         return (ele.meta || {}).keepAlive;
       })
       .map(ele => {
-        console.log('ele :>> ', ele);
-        const path = ele.path;
-        const reg = new RegExp(path, 'g');
-        console.log('reg', reg);
         return ele.fullPath;
       });
   },
diff --git a/src/views/aftersales/aftersalesWorkOrder.vue b/src/views/aftersales/aftersalesWorkOrder.vue
index 39d9ec6e..60b220a8 100644
--- a/src/views/aftersales/aftersalesWorkOrder.vue
+++ b/src/views/aftersales/aftersalesWorkOrder.vue
@@ -4,10 +4,10 @@
       <el-row :hidden="!search" style="padding:6px 18px">
         <!-- 查询模块 -->
         <el-form :inline="true" :model="query">
-          <el-form-item label="工单异常类型;货损,少货,窜货,加急,其他:">
+          <el-form-item label="工单异常类型:">
             <el-input v-model="query.workOrderType" placeholder="请输入工单异常类型;货损,少货,窜货,加急,其他"></el-input>
           </el-form-item>
-          <el-form-item label="发现节点;提货,发货,干线,库内,配送,其他,签收(PC),安装(PC):">
+          <el-form-item label="发现节点:">
             <el-input v-model="query.discoveryNode" placeholder="请输入发现节点;提货,发货,干线,库内,配送,其他,签收(PC),安装(PC)"></el-input>
           </el-form-item>
           <el-form-item label="异常工单号:">
@@ -27,8 +27,10 @@
         <div class="avue-crud__header">
           <!-- 头部左侧按钮模块 -->
           <div class="avue-crud__left">
-            <el-button v-if="this.permissionList.addBtn" type="primary" icon="el-icon-plus" @click="handleAdd">新 增</el-button>
-            <el-button v-if="this.permissionList.delBtn" type="danger" icon="el-icon-delete" @click="handleDelete" plain>删 除</el-button>
+<!--            <el-button v-if="this.permissionList.addBtn" type="primary" icon="el-icon-plus" @click="handleAdd">新 增</el-button>-->
+<!--            <el-button v-if="this.permissionList.delBtn" type="danger" icon="el-icon-delete" @click="handleDelete" plain>删 除</el-button>-->
+            <el-button   type="primary" icon="el-icon-plus" @click="handleAdd">新 增</el-button>
+            <el-button   type="danger" icon="el-icon-delete" @click="handleDelete" plain>删 除</el-button>
           </div>
           <!-- 头部右侧按钮模块 -->
           <div class="avue-crud__right">
@@ -89,9 +91,9 @@
                  width="50%"
                  :before-close="beforeClose"
                  append-to-body>
-        <el-form :disabled="view" ref="form" :model="form" label-width="80px">
+        <el-form :disabled="view" ref="form" :model="form" label-width="120px">
           <!-- 表单字段 -->
-          <el-form-item label="工单异常类型;货损,少货,窜货,加急,其他" prop="workOrderType">
+          <el-form-item label="工单异常类型 " prop="workOrderType">
             <el-select v-model="form.workOrderType" clearable placeholder="请选择工单异常类型;货损,少货,窜货,加急,其他">
               <el-option
                 v-for="item in workOrderTypeData"
@@ -101,7 +103,7 @@
               </el-option>
             </el-select>
           </el-form-item>
-          <el-form-item label="发现节点;提货,发货,干线,库内,配送,其他,签收(PC),安装(PC)" prop="discoveryNode">
+          <el-form-item label="发现节点 " prop="discoveryNode">
             <el-select v-model="form.discoveryNode" clearable placeholder="请选择发现节点;提货,发货,干线,库内,配送,其他,签收(PC),安装(PC)">
               <el-option
                 v-for="item in discoveryNodeData"
@@ -120,7 +122,7 @@
           <el-form-item label="订单自编号" prop="orderCode">
             <el-input v-model="form.orderCode" placeholder="请输入订单自编号"/>
           </el-form-item>
-          <el-form-item label="车次号 (干线卸车环节)" prop="trainNumber">
+          <el-form-item label="车次号 " prop="trainNumber">
             <el-input v-model="form.trainNumber" placeholder="请输入车次号 (干线卸车环节)"/>
           </el-form-item>
           <el-form-item label="一级品类" prop="first">
@@ -129,16 +131,16 @@
           <el-form-item label="二级品类" prop="secondary">
             <el-input v-model="form.secondary" placeholder="请输入二级品类"/>
           </el-form-item>
-          <el-form-item label="车辆路线;车次号、通过车次号自动带出车辆线路" prop="vehicleRoute">
+          <el-form-item label="车辆路线 " prop="vehicleRoute">
             <el-input v-model="form.vehicleRoute" placeholder="请输入车辆路线;车次号、通过车次号自动带出车辆线路"/>
           </el-form-item>
           <el-form-item label="送货时间" prop="deliverGoodsTime">
             <el-input v-model="form.deliverGoodsTime" placeholder="请输入送货时间"/>
           </el-form-item>
-          <el-form-item label="发现时间 (库内作业环节,配送装车环节)" prop="discoveryTime">
+          <el-form-item label="发现时间 " prop="discoveryTime">
             <el-input v-model="form.discoveryTime" placeholder="请输入发现时间 (库内作业环节,配送装车环节)"/>
           </el-form-item>
-          <el-form-item label="入库时间(库内作业环节)" prop="warehousingTime">
+          <el-form-item label="入库时间 " prop="warehousingTime">
             <el-input v-model="form.warehousingTime" placeholder="请输入入库时间(库内作业环节)"/>
           </el-form-item>
           <el-form-item label="运单商场" prop="waybillMall">
@@ -147,34 +149,27 @@
           <el-form-item label="备注" prop="remarks">
             <el-input v-model="form.remarks" placeholder="请输入备注"/>
           </el-form-item>
-          <el-form-item label="配送时间(配送装车环节)" prop="deliveryTime">
+          <el-form-item label="配送时间 " prop="deliveryTime">
             <el-input v-model="form.deliveryTime" placeholder="请输入配送时间(配送装车环节)"/>
           </el-form-item>
-          <el-form-item label="配送司机(配送装车环节)" prop="deliveryDriver">
+          <el-form-item label="配送司机 " prop="deliveryDriver">
             <el-input v-model="form.deliveryDriver" placeholder="请输入配送司机(配送装车环节)"/>
           </el-form-item>
           <el-form-item label="工单状态" prop="workOrderStatus">
             <el-input v-model="form.workOrderStatus" placeholder="请输入工单状态"/>
           </el-form-item>
-          <el-form-item label="归属客服ID" prop="customerServiceId">
-            <el-input v-model="form.customerServiceId" placeholder="请输入归属客服ID"/>
-          </el-form-item>
+
           <el-form-item label="归属客服名称" prop="customerServiceName">
             <el-input v-model="form.customerServiceName" placeholder="请输入归属客服名称"/>
           </el-form-item>
-          <el-form-item label="商场ID" prop="waybillMallId">
-            <el-input v-model="form.waybillMallId" placeholder="请输入商场ID"/>
-          </el-form-item>
+
           <el-form-item label="完结时间" prop="overTime">
             <el-input v-model="form.overTime" placeholder="请输入完结时间"/>
           </el-form-item>
           <el-form-item label="异常问题描述" prop="problemDescription">
             <el-input v-model="form.problemDescription" placeholder="请输入异常问题描述"/>
           </el-form-item>
-          <el-form-item label="仓库ID" prop="warehouseId">
-            <el-input v-model="form.warehouseId" placeholder="请输入仓库ID"/>
-          </el-form-item>
-          <el-form-item label="责任人 (库内作业环节)" prop="personResponsible">
+          <el-form-item label="责任人" prop="personResponsible">
             <el-input v-model="form.personResponsible" placeholder="请输入责任人 (库内作业环节)"/>
           </el-form-item>
           <el-form-item label="钉钉流程号" prop="processNumber">
@@ -206,6 +201,7 @@
 import { getList, getDetail, add, update, remove } from "@/api/aftersales/aftersalesWorkOrder";
 import option from "@/option/aftersales/aftersalesWorkOrder";
 import { mapGetters } from "vuex";
+import { getDictionaryBiz } from '@/api/system/dict';
 
 export default {
   data () {
@@ -237,6 +233,8 @@ export default {
       option: option,
       // 表单列表
       data: [],
+      discoveryNode: [],
+      workOrder: [],
     }
   },
   mounted() {
@@ -264,6 +262,28 @@ export default {
   methods: {
     init() {
       this.height = this.setPx(document.body.clientHeight - 340);
+      getDictionaryBiz('pc_work_order').then(res => { //异常类型
+        this.workOrder = res.data.data;
+        /*this.$functions.checkcColumnList('typeServerName', this.columnList).checkarr =
+          res.data.data.map(item => {
+            item.value = item.dictKey;
+            item.label = item.dictValue;
+            return item;
+          });*/
+      });
+      getDictionaryBiz('pc_discovery_node').then(res => { //发现环节
+        this.discoveryNode = res.data.data;
+        /*this.$functions.checkcColumnList('typeServerName', this.columnList).checkarr =
+          res.data.data.map(item => {
+            item.value = item.dictKey;
+            item.label = item.dictValue;
+            return item;
+          });*/
+      });
+
+
+
+
     },
     searchHide() {
       this.search = !this.search;
diff --git a/src/views/distribution/deliverylist/distributionDeliveryListmar.vue b/src/views/distribution/deliverylist/distributionDeliveryListmar.vue
index 2451068d..40f1e28c 100644
--- a/src/views/distribution/deliverylist/distributionDeliveryListmar.vue
+++ b/src/views/distribution/deliverylist/distributionDeliveryListmar.vue
@@ -33,34 +33,14 @@
             </el-select>
           </el-form-item>
           <el-form-item label="配送司机:">
-            <el-select
-              v-model="query.driverName"
-              filterable
-              placeholder="请输入司机名称"
-              :loading="loading"
-            >
-              <el-option
-                v-for="item in driverData"
-                :key="item.dictKey"
-                :label="item.dictValue"
-                :value="item.dictValue"
-              >
+            <el-select v-model="query.driverName" filterable placeholder="请输入司机名称" :loading="loading">
+              <el-option v-for="item in driverData" :key="item.dictKey" :label="item.dictValue" :value="item.dictValue">
               </el-option>
             </el-select>
           </el-form-item>
           <el-form-item label="配送车辆:">
-            <el-select
-              v-model="query.vehicleName"
-              filterable
-              placeholder="请输入司机名称"
-              :loading="loading"
-            >
-              <el-option
-                v-for="item in vehicleData"
-                :key="item.dictKey"
-                :label="item.dictValue"
-                :value="item.dictValue"
-              >
+            <el-select v-model="query.vehicleName" filterable placeholder="请输入司机名称" :loading="loading">
+              <el-option v-for="item in vehicleData" :key="item.dictKey" :label="item.dictValue" :value="item.dictValue">
               </el-option>
             </el-select>
           </el-form-item>
@@ -104,12 +84,9 @@
         <div class="avue-crud__header">
           <!-- 头部左侧按钮模块 -->
           <div class="avue-crud__left" style="margin-top: 20px">
-            <el-button type="primary" icon="el-icon-plus" @click="printBatchOrder"
-              >批量打印</el-button
-            >
+            <el-button type="primary" icon="el-icon-plus" @click="printBatchOrder">批量打印</el-button>
             <!--            <el-button type="danger" icon="el-icon-delete" @click="handleDelete" plain>删 除</el-button>-->
-            <el-button type="danger" icon="el-icon-download" @click="handleExportInfo" plain
-              >导出
+            <el-button type="danger" icon="el-icon-download" @click="handleExportInfo" plain>导出
             </el-button>
           </div>
           <!-- 头部右侧按钮模块 -->
@@ -122,29 +99,15 @@
       </el-row>
       <el-row>
         <!-- 列表模块 -->
-        <tablecmt
-          :columnList="columnList"
-          :tableData="data"
-          :loading="loading"
-          @inputTxt="inputsc"
-          @timeCheck="timesc"
-          @btnCheck="btnsc"
-          @selectCheck="selectsc"
-          @selection="selectionsc"
-        >
+        <tablecmt :columnList="columnList" :tableData="data" :loading="loading" @inputTxt="inputsc" @timeCheck="timesc"
+          @btnCheck="btnsc" @selectCheck="selectsc" @selection="selectionsc">
           <template #default="slotProps">
             <el-text size="small" @click="printOrder(slotProps.scope.row)">打 印</el-text>
             <el-text size="small" @click="editsolt(slotProps.scope)">查 看</el-text>
             <el-text size="small" @click="editmap(slotProps.scope)">地 图</el-text>
-            <el-text
-              size="small"
-              v-if="
-                slotProps.scope.row.deliveryStatusName !== '已完成' ||
-                slotProps.scope.row.deliveryStatus !== '3'
-              "
-              @click="handleEdit(slotProps.scope)"
-              >编 辑</el-text
-            >
+            <el-text size="small" v-if="slotProps.scope.row.deliveryStatusName !== '已完成' ||
+              slotProps.scope.row.deliveryStatus !== '3'
+              " @click="handleEdit(slotProps.scope)">编 辑</el-text>
 
             <!--            <el-button size="small" @click="costadd(slotProps.scope)">费 用 增 项</el-button>-->
           </template>
@@ -182,17 +145,9 @@
         <div class="avue-crud__pagination flex-c-sb" style="width: 100%">
           <div style="font-size: 14px">勾选数量: {{ selectionList.length }}</div>
           <!-- 分页模块 -->
-          <el-pagination
-            align="right"
-            background
-            @size-change="sizeChange"
-            @current-change="currentChange"
-            :current-page="page.currentPage"
-            :page-sizes="[30, 50, 80, 120]"
-            :page-size="page.pageSize"
-            layout="total, sizes, prev, pager, next, jumper"
-            :total="page.total"
-          >
+          <el-pagination align="right" background @size-change="sizeChange" @current-change="currentChange"
+            :current-page="page.currentPage" :page-sizes="[30, 50, 80, 120]" :page-size="page.pageSize"
+            layout="total, sizes, prev, pager, next, jumper" :total="page.total">
           </el-pagination>
         </div>
       </el-row>
@@ -219,80 +174,34 @@
       </el-dialog>
     </div>
 
-    <el-dialog
-      v-model="dialogVisible"
-      title="增值服务"
-      width="30%"
-      :model="addvalue"
-      :before-close="handleClose"
-    >
+    <el-dialog v-model="dialogVisible" title="增值服务" width="30%" :model="addvalue" :before-close="handleClose">
       <el-form-item label="增值服务" prop="freightMark">
         <el-checkbox-group v-model="form.addvalueType" @change="handleCheckedCitiesChange">
-          <el-checkbox
-            style="width: 100%; margin-bottom: 3%"
-            v-for="(item, index) in addvalueServeTypeData"
-            :key="item.dictKey"
-            :label="item.dictKey"
-            >{{ item.dictValue }}
-            <span v-if="index === 0 || index === 6 || index === 2 || index === 4"
-              >&nbsp;件数:
-              <el-input
-                type="number"
-                v-model="item.f"
-                :disabled="this.form?.freightMark?.indexOf(item.dictKey) == -1"
-                @change="textbox($event, index, 1)"
-                style="width: 20%; border: none; border-bottom: 2px solid #eee"
-              />
+          <el-checkbox style="width: 100%; margin-bottom: 3%" v-for="(item, index) in addvalueServeTypeData"
+            :key="item.dictKey" :label="item.dictKey">{{ item.dictValue }}
+            <span v-if="index === 0 || index === 6 || index === 2 || index === 4">&nbsp;件数:
+              <el-input type="number" v-model="item.f" :disabled="this.form?.freightMark?.indexOf(item.dictKey) == -1"
+                @change="textbox($event, index, 1)" style="width: 20%; border: none; border-bottom: 2px solid #eee" />
             </span>
-            <span v-if="index === 1"
-              >公里:
-              <el-input
-                type="primary"
-                v-model="item.a"
-                :disabled="this.form?.freightMark?.indexOf(item.dictKey) == -1"
-                @change="textbox($event, index, 2)"
-                style="width: 20%; border: none; border-bottom: 2px solid #eee"
-              />
+            <span v-if="index === 1">公里:
+              <el-input type="primary" v-model="item.a" :disabled="this.form?.freightMark?.indexOf(item.dictKey) == -1"
+                @change="textbox($event, index, 2)" style="width: 20%; border: none; border-bottom: 2px solid #eee" />
             </span>
-            <span v-if="index === 3"
-              >距离:
-              <el-input
-                type="number"
-                v-model="item.b"
-                :disabled="this.form?.freightMark?.indexOf(item.dictKey) == -1"
-                @change="textbox($event, index, 3)"
-                style="width: 20%; border: none; border-bottom: 2px solid #eee"
-              />
+            <span v-if="index === 3">距离:
+              <el-input type="number" v-model="item.b" :disabled="this.form?.freightMark?.indexOf(item.dictKey) == -1"
+                @change="textbox($event, index, 3)" style="width: 20%; border: none; border-bottom: 2px solid #eee" />
             </span>
-            <span v-if="index === 5"
-              >人数:
-              <el-input
-                type="number"
-                v-model="item.c"
-                :disabled="this.form?.freightMark?.indexOf(item.dictKey) == -1"
-                @change="textbox($event, index, 4)"
-                style="width: 20%; border: none; border-bottom: 2px solid #eee"
-              />
+            <span v-if="index === 5">人数:
+              <el-input type="number" v-model="item.c" :disabled="this.form?.freightMark?.indexOf(item.dictKey) == -1"
+                @change="textbox($event, index, 4)" style="width: 20%; border: none; border-bottom: 2px solid #eee" />
             </span>
-            <span v-if="index === 0"
-              >楼层:
-              <el-input
-                type="number"
-                v-model="item.d"
-                :disabled="this.form?.freightMark?.indexOf(item.dictKey) == -1"
-                @change="textbox($event, index, 5)"
-                style="width: 20%; border: none; border-bottom: 2px solid #eee"
-              />
+            <span v-if="index === 0">楼层:
+              <el-input type="number" v-model="item.d" :disabled="this.form?.freightMark?.indexOf(item.dictKey) == -1"
+                @change="textbox($event, index, 5)" style="width: 20%; border: none; border-bottom: 2px solid #eee" />
             </span>
-            <span v-if="item"
-              >预计费用:
-              <el-input
-                type="number"
-                v-model="item.e"
-                :disabled="this.form?.freightMark?.indexOf(item.dictKey) == -1"
-                @change="textbox($event, index, 6)"
-                style="width: 20%; border: none; border-bottom: 2px solid #eee"
-              />
+            <span v-if="item">预计费用:
+              <el-input type="number" v-model="item.e" :disabled="this.form?.freightMark?.indexOf(item.dictKey) == -1"
+                @change="textbox($event, index, 6)" style="width: 20%; border: none; border-bottom: 2px solid #eee" />
             </span>
           </el-checkbox>
         </el-checkbox-group>
@@ -305,12 +214,8 @@
       </template>
     </el-dialog>
   </basic-container>
-  <edittablehead
-    @setcolum="setnewcolum"
-    @closce="showdrawer"
-    :drawerShow="drawerShow"
-    :columnList="columnList"
-  ></edittablehead>
+  <edittablehead @setcolum="setnewcolum" @closce="showdrawer" :drawerShow="drawerShow" :columnList="columnList">
+  </edittablehead>
 </template>
 
 <script>
@@ -732,6 +637,7 @@ export default {
       return new Promise((rv, rev) => {
         getVehicleList(1, 10, '').then(res => {
           const data = res.data.data;
+          if (!data.records) return
           let po = [];
           data.records.forEach(item => {
             let a = {
@@ -877,7 +783,7 @@ export default {
         .then(_ => {
           done();
         })
-        .catch(_ => {});
+        .catch(_ => { });
     },
     editsolt(scope) {
       const { row } = scope;
@@ -1205,6 +1111,7 @@ export default {
     width: fit-content;
   }
 }
+
 .order-info {
   ul {
     list-style: none;
@@ -1218,10 +1125,12 @@ export default {
       display: flex;
       align-items: center;
       font-weight: 500;
+
       img {
         margin-right: 4px;
       }
     }
+
     li::after {
       content: '';
       display: block;
@@ -1233,55 +1142,68 @@ export default {
       left: 0px;
     }
   }
+
   li:first-child::after {
     content: none;
   }
+
   li:first-child {
     padding-left: 0;
   }
 }
+
 .avue-crud__header {
   // align-items: flex-end !important;
 }
+
 // 日期选择框
 .el-times {
   :deep(.el-tooltip__trigger) {
     height: 30px !important;
   }
 }
+
 .el-btn {
   min-width: 200px;
   margin-right: 0 !important;
+
   :deep(.el-form-item__content) {
     width: 180px;
     justify-content: flex-end;
   }
 }
+
 .avue-crud__right {
   display: flex;
   align-items: center;
 }
+
 .fr-fo {
   display: flex;
 }
+
 :deep(.avue-crud__header) {
   .avue-crud__left {
     margin-top: 0 !important;
   }
 }
+
 :deep(.avue-crud) {
   display: flex;
   height: 100%;
   flex-direction: column;
 }
+
 :deep(.el-card__body) {
   height: 100%;
 }
+
 :deep(.el-card) {
   height: 100%;
   display: flex;
   flex-direction: column;
 }
+
 .el-fy {
   flex: 1;
   display: flex;
diff --git a/src/views/distribution/inventory/arteryDistrilbutionBillLadingList.vue b/src/views/distribution/inventory/arteryDistrilbutionBillLadingList.vue
index 26e90055..a94962c8 100644
--- a/src/views/distribution/inventory/arteryDistrilbutionBillLadingList.vue
+++ b/src/views/distribution/inventory/arteryDistrilbutionBillLadingList.vue
@@ -1,14 +1,19 @@
 <template>
   <basic-container>
     <div class="avue-crud">
+      <!-- 搜索模块 -->
       <el-row v-if="!search">
         <!-- 查询模块 -->
         <el-form :inline="true" :model="query" class="el-fr-d">
           <div class="fo-fl">
-            <el-form-item label="服务号:">
-              <el-input v-model="query.serviceNumber" placeholder="请输入服务号"></el-input>
+            <el-form-item label="批次号:">
+              <el-input
+                v-model="query.serviceNumber"
+                placeholder="请输入批次号"
+                clearable
+              ></el-input>
             </el-form-item>
-            <el-form-item label="入库时间:" class="el-times">
+            <el-form-item label="提货时间:" class="el-times">
               <!--            <el-input v-model="query.stockupArea" placeholder="请输入备货区"></el-input>-->
               <el-date-picker
                 v-model="stockupDate"
@@ -18,6 +23,7 @@
                 start-placeholder="开始时间"
                 end-placeholder="结束时间"
                 :shortcuts="shortcuts"
+                clearable
               />
             </el-form-item>
           </div>
@@ -28,25 +34,15 @@
           </el-form-item>
         </el-form>
       </el-row>
-      <el-row>
-        <el-col :span="4">
-          <span style="margin-bottom: 2%; font-size: 16px">
-            待提货:{{ treatNum }}单/{{ numBill }}件
-          </span>
-        </el-col>
-        <el-col :span="10">
-          <span style="margin-bottom: 2%; font-size: 16px">
-            已提货:{{ stopNum }}单/{{ numBill }}件</span
-          >
-        </el-col>
-      </el-row>
+
+      <!-- 控件模块 -->
       <el-row>
         <div class="avue-crud__header">
           <!-- 头部左侧按钮模块 -->
           <div class="avue-crud__left">
             <el-button type="primary" icon="el-icon-plus" @click="handleAdd">新 增</el-button>
-            <el-button type="primary" icon="el-icon-edit" @click="handleAdd">编 辑</el-button>
-            <el-button type="primary" icon="el-icon-plus" @click="handleAdd"
+            <el-button type="primary" icon="el-icon-edit" @click="handleEdit">编 辑</el-button>
+            <el-button type="primary" icon="el-icon-plus" @click="handleAddDistrilbution"
               >添加提货数据</el-button
             >
             <el-button type="primary" icon="el-icon-check" @click="handleAdd">提货完成</el-button>
@@ -66,6 +62,8 @@
           </div>
         </div>
       </el-row>
+
+      <!-- 表格 -->
       <el-row>
         <!-- 列表模块 -->
         <tablecmt
@@ -79,29 +77,36 @@
           @selection="selectionChange"
         >
           <template #default="slotProps">
-            <!--            <el-button size="small" @click="editsolt(slotProps.scope)">修改</el-button>-->
-            <el-text size="small" text @click="handleLike(slotProps.scope)">查看</el-text>
-            <el-text
-              size="small"
-              type="danger"
-              icon="el-icon-edit"
-              text
-              @click="handleSign(slotProps.scope, 1)"
-              v-if="slotProps.scope.row.conditions < 30"
-              >签收</el-text
-            >
-            <el-text
-              type="primary"
-              text
-              icon="el-icon-edit"
-              @click="handleEdits(slotProps.scope)"
-              v-if="slotProps.scope.row.conditions < 20"
-              >编辑提货信息</el-text
-            >
-            <!--            <el-button size="small" type="danger" icon="el-icon-edit" text @click="handleDeleteOwn(slotProps.scope)">删除</el-button>-->
+            <template v-if="slotProps.scope.column.label === '提货批次'">
+              <el-text size="small" text @click="handleLike(slotProps.scope)">{{
+                slotProps.scope.row.pickupBatch
+              }}</el-text>
+              <el-text
+                type="primary"
+                text
+                icon="el-icon-edit"
+                @click="handleShowDetail(slotProps.scope)"
+                >明 细</el-text
+              >
+            </template>
+
+            <template v-if="slotProps.scope.column.label === '操作'">
+              <el-text size="small" text @click="handleLike(slotProps.scope)">查 看</el-text>
+              <el-text type="primary" text icon="el-icon-edit" @click="handleEdits(slotProps.scope)"
+                >明 细</el-text
+              >
+            </template>
           </template>
         </tablecmt>
       </el-row>
+
+      <!-- 统计 -->
+      <el-row>
+        <div>选择数: , 运单数: , 件数: , 重量: , 体积: , 提货费: ,</div>
+        <div>总计: 总数: , 运单数: , 件数: , 重量: , 体积: , 提货费: ,</div>
+      </el-row>
+
+      <!-- 分页模块 -->
       <el-row class="el-fy">
         <div class="avue-crud__pagination flex-c-sb" style="width: 100%">
           <div style="font-size: 14px">勾选数量: {{ selectionList.length }}</div>
@@ -120,41 +125,453 @@
           </el-pagination>
         </div>
       </el-row>
-      <!-- 表单模块 -->
+
+      <!-- 表单模块 -- 新增 -- 编辑 -->
       <el-dialog
         :title="title"
         v-model="box"
+        width="80%"
+        :before-close="beforeClose"
+        append-to-body
+      >
+        <!-- 表单 -->
+        <el-form :disabled="view" ref="form" :model="form" label-width="80px">
+          <!-- 表单字段 -->
+          <el-row>
+            <el-form-item label="提货车辆" prop="pickUpTime">
+              <el-input v-model="form.pickUpTime" placeholder="请选择提货车辆" />
+            </el-form-item>
+            <el-button
+              style="margin-right: 10px"
+              v-if="addInfo.isNew"
+              type="primary"
+              @click="
+                () => {
+                  this.$router.push('/basicdata/vehicle/basicdataVehicle');
+                }
+              "
+              icon="plus"
+            ></el-button>
+            <el-form-item label="司机" prop="consignee">
+              <el-input v-model="form.consignee" placeholder="请选择司机" />
+            </el-form-item>
+            <el-button
+              type="primary"
+              style="margin-right: 10px"
+              v-if="addInfo.isNew"
+              @click="
+                () => {
+                  this.$router.push('/basicdata/driverArtery/basicdataDriverArtery');
+                }
+              "
+              icon="plus"
+            ></el-button>
+            <el-form-item label="线路" prop="pickUpPlate">
+              <el-input v-model="form.pickUpPlate" placeholder="请选择线路" />
+            </el-form-item>
+            <el-button
+              type="primary"
+              style="margin-right: 10px"
+              v-if="addInfo.isNew"
+              @click="
+                () => {
+                  this.popUpShow.addDistrilbutionLineVisited = true;
+                }
+              "
+              icon="plus"
+            ></el-button>
+            <el-form-item label="预计件数" prop="deliveryDocument">
+              <el-input-number v-model="addInfo.form.num" :min="0" />
+            </el-form-item>
+          </el-row>
+
+          <el-row>
+            <el-form-item label="承运商" prop="pickUpTime">
+              <el-select v-model="form.certificateType" clearable placeholder="请选择承运商">
+                <el-option
+                  v-for="item in certificateTypeData"
+                  :key="item.dictKey"
+                  :label="item.dictValue"
+                  :value="item.dictKey"
+                >
+                </el-option>
+              </el-select>
+            </el-form-item>
+            <el-form-item label="计费模式" prop="consignee">
+              <el-select v-model="form.certificateType" clearable placeholder="请选择计费模式">
+                <el-option
+                  v-for="item in certificateTypeData"
+                  :key="item.dictKey"
+                  :label="item.dictValue"
+                  :value="item.dictKey"
+                >
+                </el-option>
+              </el-select>
+            </el-form-item>
+            <el-form-item label="提货费用" prop="pickUpPlate">
+              <el-input-number v-model="addInfo.form.num" :min="0" />
+            </el-form-item>
+          </el-row>
+          <el-form-item label="备注" prop="deliveryPlate">
+            <el-input v-model="form.deliveryPlate" type="textarea" placeholder="请输入送货费用" />
+          </el-form-item>
+        </el-form>
+
+        <!-- 表格 -->
+        <div class="add_row">
+          <!-- 列表模块 -->
+          <div style="width: 45%">
+            <div style="text-align: end">
+              <el-button type="text" style="cursor: pointer" @click="handleAddWaybill">
+                添 加
+                <el-icon><CaretRight /></el-icon>
+              </el-button>
+            </div>
+            <tablecmt
+              :columnList="columnNewList"
+              :tableData="addInfo.oldData"
+              :loading="loadingObj.oldListLoading"
+              @inputTxt="inputsc"
+              @timeCheck="timesc"
+              @btnCheck="btnsc"
+              @selectCheck="selectsc"
+              @selection="selectionChange"
+            >
+            </tablecmt>
+            <div class="statistics_row">
+              <div>合计: 选择数: {{ addInfo.oldSelectionList.length }},</div>
+              <div>件数: {{ selectionList.length }},</div>
+              <div>重量: {{ selectionList.length }},</div>
+              <div>体积: {{ selectionList.length }}</div>
+            </div>
+            <div class="avue-crud__pagination flex-c-sb" style="width: 100%">
+              <!-- 分页模块 -->
+              <el-pagination
+                style="zoom: 0.9"
+                align="right"
+                background
+                @size-change="sizeChange"
+                @current-change="currentChange"
+                :current-page="addInfo.oldPages.currentPage"
+                :page-sizes="[30, 50, 80, 120]"
+                :page-size="addInfo.oldPages.pageSize"
+                layout="total, sizes, prev, pager, next, jumper"
+                :total="addInfo.oldPages.total"
+              >
+              </el-pagination>
+            </div>
+          </div>
+
+          <!-- 列表模块 -->
+          <div style="width: 45%">
+            <div style="text-align: start">
+              <el-button type="text" class="pointer" @click="handleRemoveWaybill">
+                <el-icon><CaretLeft /></el-icon>
+                移 除
+              </el-button>
+            </div>
+            <tablecmt
+              :columnList="columnNewList"
+              :tableData="addInfo.newData"
+              :loading="loadingObj.oldListLoading"
+              @inputTxt="inputsc"
+              @timeCheck="timesc"
+              @btnCheck="btnsc"
+              @selectCheck="selectsc"
+              @selection="selectionChange"
+            >
+            </tablecmt>
+            <div class="statistics_row">
+              <div>合计: 选择数: {{ addInfo.oldSelectionList.length }},</div>
+              <div>件数: {{ selectionList.length }},</div>
+              <div>重量: {{ selectionList.length }},</div>
+              <div>体积: {{ selectionList.length }}</div>
+            </div>
+          </div>
+        </div>
+
+        <!-- 表单按钮 -->
+        <template #footer>
+          <span v-if="!view" class="dialog-footer">
+            <el-button type="primary" icon="el-icon-circle-check" @click="handleSubmit"
+              >提 交</el-button
+            >
+            <el-button icon="el-icon-circle-close" @click="box = false">取 消</el-button>
+          </span>
+        </template>
+      </el-dialog>
+
+      <!-- 新增线路 -->
+      <el-dialog
+        title="新增线路"
+        v-model="popUpShow.addDistrilbutionLineVisited"
+        width="50%"
+        :before-close="beforeClose"
+        append-to-body
+      >
+        <div class="crad_container">
+          <div class="card_container_item">
+            <div class="card_container_item_title">基本信息</div>
+            <div class="card_container_item_box">
+              <!-- 表单 -->
+              <el-form
+                :disabled="view"
+                ref="form"
+                :model="addLineInfo.addLineForm"
+                label-width="80px"
+              >
+                <!-- 表单字段 -->
+                <el-form-item label="状态" prop="pickUpTime">
+                  <el-switch v-model="form.pickUpTime" />
+                </el-form-item>
+                <el-form-item label="备注" prop="pickUpTime">
+                  <el-input v-model="form.pickUpTime" type="textarea" placeholder="请输入备注" />
+                </el-form-item>
+                <el-form-item label="总时效" prop="pickUpTime">
+                  <el-input v-model="form.pickUpTime" disabled placeholder="总时效" />
+                </el-form-item>
+                <el-form-item label="总里程" prop="pickUpTime">
+                  <el-input v-model="form.pickUpTime" disabled placeholder="总里程" />
+                </el-form-item>
+              </el-form>
+            </div>
+          </div>
+
+          <div class="card_container_item">
+            <div class="card_container_item_title">
+              <div>节点信息</div>
+              <el-text type="primary" class="pointer">创建新节点</el-text>
+            </div>
+            <div class="card_container_item_box">
+              <el-scrollbar height="400px">
+                <el-steps direction="vertical" style="height: 100%">
+                  <el-step
+                    icon="Location"
+                    v-for="(item, index) in addLineInfo.lineList"
+                    :key="item"
+                  >
+                    <template #description>
+                      <el-form :model="item" label-width="80px" style="zoom: 0.9">
+                        <el-row>
+                          <!-- 表单字段 -->
+                          <template v-if="index === 0">
+                            <el-form-item label="起点" prop="pickUpTime">
+                              <el-select
+                                v-model="item.customerCode"
+                                filterable
+                                remote
+                                reserve-keyword
+                                remote-show-suffix
+                                :remote-method="remoteCodeMethod"
+                                :loading="loading"
+                                @change="getMenDian($event, 2)"
+                                placeholder="请输入内容"
+                                :teleported="false"
+                                placement="bottom-end"
+                                class="popUpselect"
+                              >
+                                <el-option
+                                  v-for="item in options"
+                                  :key="item.value"
+                                  :label="item.code"
+                                  :value="item.value"
+                                />
+                              </el-select>
+                            </el-form-item>
+                          </template>
+
+                          <template v-else>
+                            <el-form-item label="节点" prop="pickUpTime">
+                              <el-select
+                                v-model="item.customerCode"
+                                filterable
+                                remote
+                                reserve-keyword
+                                remote-show-suffix
+                                :remote-method="remoteCodeMethod"
+                                :loading="loading"
+                                @change="getMenDian($event, 2)"
+                                placeholder="请输入内容"
+                                :teleported="false"
+                                placement="bottom-end"
+                                class="popUpselect"
+                              >
+                                <el-option
+                                  v-for="item in options"
+                                  :key="item.value"
+                                  :label="item.code"
+                                  :value="item.value"
+                                />
+                              </el-select>
+                            </el-form-item>
+                          </template>
+
+                          <el-button
+                            type="primary"
+                            v-if="index !== 0"
+                            icon="CirclePlusFilled"
+                            @click="
+                              () => {
+                                addLineInfo.lineList.splice(index, 1);
+                              }
+                            "
+                            >删除</el-button
+                          >
+                        </el-row>
+
+                        <el-form-item label="联系人" prop="pickUpTime">
+                          <el-input v-model="item.name" type="text" />
+                        </el-form-item>
+                        <el-form-item label="联系方式" prop="pickUpTime">
+                          <el-input v-model="item.code" type="text" />
+                        </el-form-item>
+                        <el-form-item label="联系地址" prop="pickUpTime">
+                          <el-input v-model="item.code" type="text" />
+                        </el-form-item>
+                        <el-form-item label="时效" prop="pickUpTime">
+                          <el-input-number :min="0" v-model="item.code" />
+                        </el-form-item>
+                        <el-form-item label="里程" prop="pickUpTime">
+                          <el-input-number :min="0" v-model="item.code" />
+                        </el-form-item>
+                      </el-form>
+                      <el-button
+                        type="primary"
+                        v-if="index === addLineInfo.lineList.length - 1"
+                        icon="CirclePlusFilled"
+                        @click="
+                          () => {
+                            addLineInfo.lineList.push({});
+                          }
+                        "
+                        >新增</el-button
+                      >
+                    </template>
+                  </el-step>
+
+                  <!-- 终点 -->
+                  <el-step icon="Location">
+                    <template #description>
+                      <el-form
+                        :disabled="view"
+                        ref="form"
+                        :model="addLineInfo.addLineForm"
+                        label-width="80px"
+                        style="zoom: 0.9"
+                      >
+                        <!-- 表单字段 -->
+                        <el-form-item label="终点" prop="pickUpTime">
+                          <el-select
+                            v-model="form.customerCode"
+                            filterable
+                            remote
+                            reserve-keyword
+                            remote-show-suffix
+                            :remote-method="remoteCodeMethod"
+                            :loading="loading"
+                            @change="getMenDian($event, 2)"
+                            placeholder="请输入内容"
+                            :teleported="false"
+                            placement="bottom-end"
+                            class="popUpselect"
+                          >
+                            <el-option
+                              v-for="item in options"
+                              :key="item.value"
+                              :label="item.code"
+                              :value="item.value"
+                            />
+                          </el-select>
+                        </el-form-item>
+                        <el-form-item label="联系人" prop="pickUpTime">
+                          <el-input v-model="form.pickUpTime" type="text" />
+                        </el-form-item>
+                        <el-form-item label="联系方式" prop="pickUpTime">
+                          <el-input v-model="form.pickUpTime" type="text" />
+                        </el-form-item>
+                        <el-form-item label="联系地址" prop="pickUpTime">
+                          <el-input v-model="form.pickUpTime" type="text" />
+                        </el-form-item>
+                      </el-form>
+                    </template>
+                  </el-step>
+                </el-steps>
+              </el-scrollbar>
+            </div>
+          </div>
+        </div>
+        <!-- 表单按钮 -->
+        <template #footer>
+          <span v-if="!view" class="dialog-footer">
+            <el-button type="primary" icon="el-icon-circle-check" @click="handleSubmit"
+              >提 交</el-button
+            >
+            <el-button
+              icon="el-icon-circle-close"
+              @click="popUpShow.addDistrilbutionVisited = false"
+              >取 消</el-button
+            >
+          </span>
+        </template>
+      </el-dialog>
+
+      <!-- 添加提货数据 -->
+      <el-dialog
+        :title="title"
+        v-model="popUpShow.addDistrilbutionVisited"
         width="50%"
         :before-close="beforeClose"
         append-to-body
       >
         <el-form :disabled="view" ref="form" :model="form" label-width="80px">
           <!-- 表单字段 -->
-          <el-form-item label="提货时间" prop="pickUpTime">
-            <el-input v-model="form.pickUpTime" placeholder="请输入提货时间" />
+          <el-form-item label="运单号" prop="clientId">
+            <!--              <el-input v-model="form.customerName" placeholder="请输入客户名称"/>-->
+            <el-select
+              v-model="form.clientId"
+              filterable
+              remote
+              reserve-keyword
+              remote-show-suffix
+              :remote-method="remoteMethod"
+              :loading="loading"
+              clearable
+              placeholder="请输入运单号"
+            >
+              <el-option
+                v-for="item in options"
+                :key="item.value"
+                :label="item.label"
+                :value="item.value"
+              />
+            </el-select>
           </el-form-item>
-          <el-form-item label="提货人" prop="consignee">
+          <el-form-item label="开单日期" prop="consignee">
             <el-input v-model="form.consignee" placeholder="请输入提货人" />
           </el-form-item>
-          <el-form-item label="提货车牌" prop="pickUpPlate">
-            <el-input v-model="form.pickUpPlate" placeholder="请输入提货车牌" />
+          <el-form-item label="货物名称" prop="pickUpPlate">
+            <el-input v-model="form.pickUpPlate" placeholder="请输入货物名称" />
           </el-form-item>
-          <el-form-item label="提货证件" prop="deliveryDocument">
+          <el-form-item label="提货件数" prop="deliveryDocument">
+            <el-input-number v-model="form.deliveryDocument" :min="1" :max="10" />
+          </el-form-item>
+          <el-form-item label="到站" prop="deliveryDocument">
             <el-input v-model="form.deliveryDocument" placeholder="请输入提货证件" />
           </el-form-item>
-          <el-form-item label="证件类型" prop="certificateType">
-            <el-select v-model="form.certificateType" clearable placeholder="请选择证件类型">
-              <el-option
-                v-for="item in certificateTypeData"
-                :key="item.dictKey"
-                :label="item.dictValue"
-                :value="item.dictKey"
-              >
-              </el-option>
-            </el-select>
+          <el-form-item label="发货人" prop="pickUpTime">
+            <el-input v-model="form.pickUpTime" placeholder="请输入发货人" />
+          </el-form-item>
+          <el-form-item label="发货手机" prop="consignee">
+            <el-input v-model="form.consignee" placeholder="请输入发货手机" />
+          </el-form-item>
+          <el-form-item label="收货电话" prop="pickUpPlate">
+            <el-input v-model="form.pickUpPlate" placeholder="请输入收货电话" />
           </el-form-item>
-          <el-form-item label="费用合计" prop="totalCost">
-            <el-input v-model="form.totalCost" placeholder="请输入费用合计" />
+          <el-form-item label="支付方式" prop="deliveryDocument">
+            <el-input v-model="form.deliveryDocument" placeholder="请输入支付方式" />
+          </el-form-item>
+          <el-form-item label="备注" prop="deliveryDocument">
+            <el-input v-model="form.deliveryDocument" type="textarea" placeholder="请输入备注" />
           </el-form-item>
         </el-form>
         <!-- 表单按钮 -->
@@ -163,10 +580,53 @@
             <el-button type="primary" icon="el-icon-circle-check" @click="handleSubmit"
               >提 交</el-button
             >
-            <el-button icon="el-icon-circle-close" @click="box = false">取 消</el-button>
+            <el-button
+              icon="el-icon-circle-close"
+              @click="popUpShow.addDistrilbutionVisited = false"
+              >取 消</el-button
+            >
           </span>
         </template>
       </el-dialog>
+
+      <!-- 查看明细 -->
+      <el-dialog
+        :title="title"
+        v-model="popUpShow.distrilbutionDetailVisited"
+        width="80%"
+        destroy-on-close
+        :before-close="beforeClose"
+        append-to-body
+      >
+        <!-- 列表模块 -->
+        <tablecmt
+          :columnList="columnDetailList"
+          :tableData="data"
+          :loading="loading"
+          @inputTxt="inputsc"
+          @timeCheck="timesc"
+          @btnCheck="btnsc"
+          @selectCheck="selectsc"
+          @selection="selectionChange"
+        >
+        </tablecmt>
+        <div class="avue-crud__pagination flex-c-sb" style="width: 100%">
+          <div style="font-size: 14px">勾选数量: {{ selectionList.length }}</div>
+          <!-- 分页模块 -->
+          <el-pagination
+            align="right"
+            background
+            @size-change="detailSizeChange"
+            @current-change="detailCurrentChange"
+            :current-page="detailPage.currentPage"
+            :page-sizes="[30, 50, 80, 120]"
+            :page-size="detailPage.pageSize"
+            layout="total, sizes, prev, pager, next, jumper"
+            :total="detailPage.total"
+          >
+          </el-pagination>
+        </div>
+      </el-dialog>
     </div>
   </basic-container>
   <edittablehead
@@ -179,14 +639,16 @@
 
 <script>
 import {
-  add,
-  update,
   remove,
   getListOwn,
   getListOwnNUm,
   getBillLadingExport,
 } from '@/api/distribution/distrilbutionBillLading';
-import { columnList } from '@/option/distribution/arteryDistrilbutionBillLadingList';
+import {
+  columnList,
+  columnDetailList,
+  columnNewList,
+} from '@/option/distribution/arteryDistrilbutionBillLadingList';
 import { mapGetters } from 'vuex';
 import { getDictionaryBiz } from '@/api/system/dict';
 import { getToken } from '@/utils/auth';
@@ -197,17 +659,34 @@ export default {
   data() {
     return {
       columnList,
-      columnListedit: [],
+      columnDetailList,
+      columnNewList,
+      /** 列表配置抽屉 */
       drawerShow: false,
       height: 0,
       // 弹框标题
       title: '',
       // 是否展示弹框
       box: false,
+      /** 弹出层显示 */
+      popUpShow: {
+        /** 添加提货数据 */
+        addDistrilbutionVisited: false,
+        /** 提货详情是否显示 */
+        distrilbutionDetailVisited: false,
+        /** 新增线路是否显示 */
+        addDistrilbutionLineVisited: false,
+      },
       // 是否显示查询
       search: true,
       // 加载中
       loading: true,
+      /** 加载中 */
+      loadingObj: {
+        loading: false,
+        oldListLoading: false,
+        newlistLoading: false,
+      },
       // 是否为查看模式
       view: false,
       // 查询信息
@@ -222,18 +701,56 @@ export default {
         pageSize: 30,
         total: 40,
       },
+      /** 详情内分页信息 */
+      detailPage: {
+        currentPage: 1,
+        pageSize: 30,
+        total: 40,
+      },
       // 表单数据
       form: {},
       // 选择行
       selectionList: [],
       // 表单列表
       data: [],
+      /** 新增 && 编辑 信息 */
+      addInfo: {
+        /** 表单 */
+        form: {},
+        /** 未选择 -- 数据 */
+        oldData: [],
+        /** 已选择数据 */
+        newData: [],
+        /** 未选择 -- 复选框 */
+        oldSelectionList: [],
+        /** 已选择 -- 复选框 */
+        newSelectionList: [],
+        /** 未选择 -- 页码数据 */
+        oldPages: {
+          currentPage: 1,
+          pageSize: 30,
+          total: 40,
+        },
+        /** 已选择 -- ids */
+        haveIds: [],
+        /** 是否是新增 */
+        isNew: true,
+      },
+      /** 创建线路信息 */
+      addLineInfo: {
+        /** 创建线路信息表单 */
+        addLineForm: {},
+        /** 线路列表 */
+        lineList: [{}],
+        /** 起点信息 */
+        startInfo: {},
+        /** 终点信息 */
+        endInfo: {},
+      },
+      /** 字典 */
       clientType: [],
-      costList: [],
-      distributionType: [],
-      costListName: [],
-      certificateType: [],
-
+      options: [],
+      /** 时间 */
       shortcuts: [
         {
           text: '最近一周',
@@ -266,6 +783,7 @@ export default {
     };
   },
   mounted() {
+    console.log('columnDetailList :>> ', columnDetailList);
     this.init();
     this.onLoad(this.page);
     /**
@@ -306,9 +824,7 @@ export default {
     },
   },
   methods: {
-    /**
-     * 导出
-     * */
+    /** 导出 */
     handleExportInfo() {
       let row = {};
       console.log(this.stockupDate);
@@ -352,14 +868,6 @@ export default {
     selectionsc(value) {
       console.log(value);
     },
-    delectsolt(scope) {
-      const { row } = scope;
-      console.log(row);
-    },
-    editsolt(scope) {
-      const { row } = scope;
-      console.log(row);
-    },
     btnsc(index, row) {
       console.log(index, row);
     },
@@ -390,29 +898,27 @@ export default {
       this.query[row.prop] = index;
       this.onLoad(this.page);
     },
-    handleRemove(file, fileList) {
-      console.log(file, fileList);
-    },
-    handlePreview(file) {
-      console.log(file);
-    },
-    textbox(e, index) {
-      console.log('e,index', e, index);
-      this.costList[index + 1] = e;
-    },
-    handleCheckedCitiesChange(value) {
-      console.log('>>>>>>>', value);
-      if (value.length < 1) {
-        this.costList = [];
-        this.costListName = [];
+    /** 客户查询 */
+    async remoteMethod(query) {
+      if (query) {
+        // this.loading = true;
+        this.options = [];
+        this.form.customerCode = null;
+        let cl = await getListClient(this.page.currentPage, this.page.pageSize, {
+          clientName: query,
+        });
+        console.log('客户信息1234>>>>', cl.data.data.records);
+        cl.data.data.records.forEach(i => {
+          let st = {
+            label: i.clientName,
+            value: i.id,
+            code: i.clientCode,
+          };
+          this.options.push(st);
+        });
+      } else {
+        this.options = [];
       }
-      this.clientType.forEach(i => {
-        if (value.includes(i.dictKey)) {
-          console.log(i);
-          i.pitch = true;
-          this.costListName = value;
-        }
-      });
     },
     init() {
       this.height = this.setPx(document.body.clientHeight - 160);
@@ -434,97 +940,74 @@ export default {
     checkcColumnList(prop, columnList) {
       return columnList.find(item => item.prop === prop);
     },
+    /** 是否显示搜索控件 */
     searchHide() {
       this.search = !this.search;
     },
+    /** 搜索 */
     searchChange() {
       this.onLoad(this.page);
     },
+    /** 重置搜索数据 */
     searchReset() {
       this.query = {};
       this.stockupDate = [];
       this.page.currentPage = 1;
       this.onLoad(this.page);
     },
-    bianLier(costListName, clientType, costList, fei) {
-      console.log('>>>>>>>>>', costListName, clientType, costList, fei);
-      this.pan = false;
-      for (let i = 0; i < costListName.length; i++) {
-        if (!costList) {
-          this.pan = true;
-          return;
-        }
-        for (let a = 0; a < clientType.length; a++) {
-          // console.log("进来了",clientType[a].dictKey , costListName[i]);
-          if (clientType[a].dictKey == costListName[i]) {
-            // console.log("进来了",clientType[a].dictKey , costListName[i]);
-            let zhi = costList[costListName[i]];
-            if (!zhi) {
-              this.pan = true;
-              continue;
-            } else {
-              //2.添加
-              fei.set(clientType[a].dictKey, zhi);
-            }
-          }
-        }
-      }
-    },
-    async handleSubmit() {
-      if (!this.form.id) {
-        let fei = new Map();
-        await this.bianLier(this.costListName, this.clientType, this.costList, fei);
-        this.form.fei = Object.fromEntries(fei);
-        this.form.stockArticleId = this.$route.query.ids;
-        console.log('this.form', this.form);
-        add(this.form).then(() => {
-          this.box = false;
-          this.onLoad(this.page);
-          this.$message({
-            type: 'success',
-            message: '操作成功!',
-          });
-          this.contextmenuFlag = false;
-          this.$store.commit('DEL_TAG_CURRENT');
-          this.$router.push(this.tagWel);
-        });
-      } else {
-        update(this.form).then(() => {
-          this.box = false;
-          this.onLoad(this.page);
-          this.$message({
-            type: 'success',
-            message: '操作成功!',
-          });
-        });
-      }
-    },
+    /** 表单提交 */
+    async handleSubmit() {},
+    /** 新增 */
     handleAdd() {
       this.title = '新增';
-      this.form = {};
+      this.addInfo.form = {};
       this.box = true;
+      this.addInfo.isNew = true;
+      this.$nextTick(() => {
+        // 获取表格实例并赋值高度和宽度
+        var bodyContent = document.querySelectorAll('.el-dialog .maboxhi');
+        bodyContent.forEach(val => {
+          val.style.height = '350px';
+          // val.style.width = '45%';
+        });
+      });
     },
-    handleBillAdd() {
-      this.$router.push({
-        path: '/distribution/inventory/distrilbutionBillLading',
-        query: {
-          type: '3',
-        },
+    /** 修改 */
+    handleEdit() {
+      this.title = '修改';
+      this.addInfo.form = {};
+      this.box = true;
+      this.addInfo.isNew = false;
+      this.$nextTick(() => {
+        // 获取表格实例并赋值高度和宽度
+        var bodyContent = document.querySelectorAll('.el-dialog .maboxhi');
+        bodyContent.forEach(val => {
+          val.style.height = '350px';
+          // val.style.width = '45%';
+        });
       });
     },
-    //删除
+    /** 开启添加提货数据弹窗 */
+    handleAddDistrilbution() {
+      if (this.selectionList.length === 0) return this.$message.error('最少选择一条数据');
+      this.title = '添加提货数据';
+      this.popUpShow.addDistrilbutionVisited = true;
+    },
+    /** 删除 */
     handleDeleteOwn(row) {
       console.log('删除!!', row);
     },
-    //查询详细
+    /** 查询详细 */
     handleLike(row) {
-      this.$router.push({
-        path: '/distribution/inventory/distrilbutionBillLadingView',
-        query: {
-          id: row.row.id,
-        },
-      });
+      console.log('row :>> ', row);
+      // this.$router.push({
+      //   path: '/distribution/inventory/distrilbutionBillLadingView',
+      //   query: {
+      //     id: row.row.id,
+      //   },
+      // });
     },
+    /** 查看 */
     handleEdits(row) {
       this.$router.push({
         path: '/distribution/inventory/distrilbutionBillLading',
@@ -535,6 +1018,7 @@ export default {
         },
       });
     },
+    /** 批量删除 */
     handleDelete() {
       if (this.selectionList.length === 0) {
         this.$message.warning('请选择至少一条数据');
@@ -557,43 +1041,42 @@ export default {
           });
         });
     },
-    rowDel(row) {
-      this.$confirm('确定将选择数据删除?', {
-        confirmButtonText: '确定',
-        cancelButtonText: '取消',
-        type: 'warning',
-      })
-        .then(() => {
-          return remove(row.id);
-        })
-        .then(() => {
-          this.onLoad(this.page);
-          this.$message({
-            type: 'success',
-            message: '操作成功!',
-          });
-        });
-    },
+    /** 弹出层开启前清除数据 */
     beforeClose(done) {
       done();
       this.form = {};
       this.view = false;
     },
+    /** 表格复选框改变执行的回调 */
     selectionChange(list) {
       this.selectionList = list;
     },
+    /** 清空复选框 */
     selectionClear() {
       this.selectionList = [];
       // this.$refs.table.clearSelection();
     },
+    /** 页码改变执行回调 */
     currentChange(currentPage) {
       this.page.currentPage = currentPage;
       this.onLoad(this.page);
     },
+    /** 页数改变执行回调 */
     sizeChange(pageSize) {
       this.page.pageSize = pageSize;
       this.onLoad(this.page);
     },
+    /** 详情 -- 页码改变执行回调 */
+    detailCurrentChange(currentPage) {
+      this.page.currentPage = currentPage;
+      this.onLoad(this.page);
+    },
+    /** 详情 -- 页数改变执行回调 */
+    detailSizeChange(pageSize) {
+      this.page.pageSize = pageSize;
+      this.onLoad(this.page);
+    },
+    /** 获取时间 */
     getTime(dat) {
       let date = new Date(dat);
       let formatter = new Intl.DateTimeFormat('en', {
@@ -607,6 +1090,30 @@ export default {
       let formattedDate = formatter.format(date);
       return formattedDate.replace(/\//g, '-');
     },
+    /** 查看明细 */
+    handleShowDetail({ row }) {
+      this.title = `${row.pickupBatch} 提货明细`;
+      this.popUpShow.distrilbutionDetailVisited = true;
+      this.$nextTick(() => {
+        var bodyContent = document.querySelector('.el-dialog .maboxhi');
+        bodyContent.style.height = '600px';
+      });
+    },
+    /** 添加运单 */
+    handleAddWaybill() {
+      if (this.addInfo.oldSelectionList.length === 0)
+        return this.$message.warning('最少选择一条运单');
+      this.addInfo.newData = [...this.addInfo.newData, ...this.addInfo.oldSelectionList];
+      this.addInfo.haveIds = this.addInfo.map(val => val.id);
+    },
+    /** 移除运单 */
+    handleRemoveWaybill() {
+      if (this.addInfo.newSelectionList.length === 0)
+        return this.$message.warning('最少选择一条运单');
+      this.addInfo.newData = [...this.addInfo.newData, ...this.addInfo.oldSelectionList];
+      this.addInfo.haveIds = this.addInfo.map(val => val.id);
+    },
+    /** 请求页面数据 */
     onLoad(page, params = {}) {
       this.loading = true;
       if (this.stockupDate.length > 0) {
@@ -664,10 +1171,67 @@ export default {
         this.selectionClear();
       });
     },
+    async getMenDian(row, num) {
+      // console.log("值阿德飒飒的",row);
+      if (num == 1) {
+        const obj = this.options.find(item => item.value === row);
+        console.log('obj>>>>>>>>>>>', obj);
+        this.options = [
+          {
+            key: obj.value,
+            value: obj.value,
+            label: obj.label,
+            code: obj.code,
+          },
+        ];
+        this.form.customerCode = obj.code;
+      } else {
+        const obj = this.options.find(item => item.value === row);
+        console.log('obj>>>>>>>>>>>', obj);
+        this.options = [
+          {
+            key: obj.value,
+            value: obj.value,
+            label: obj.label,
+            code: obj.code,
+          },
+        ];
+        this.form.clientId = obj.value;
+      }
+      this.form.serviceType = null;
+      let aa = '';
+      this.options.some(i => {
+        // console.log(">><><><<>",i);
+        if (i.value == row) {
+          this.form.customerName = i.label;
+          this.form.clientCode = i.code;
+          //查询客户服务类型
+          aa = i.value;
+        }
+      });
+      let bu = await getListName(this.page.currentPage, this.page.pageSize, {
+        clientId: aa,
+        typeService: '3',
+      });
+      // console.log("bububu",bu.data.data.records);
+      if (bu.data.data?.records.length > 0) {
+        this.form.serviceType = bu.data.data.records[0].mold;
+      }
+      let cl = await getListClient(this.page.currentPage, this.page.pageSize, { pid: row });
+      // console.log(">>>>",cl.data.data.records);
+      this.shop = [];
+      cl.data.data.records.forEach(i => {
+        let st = {
+          label: i.clientName,
+          value: i.id,
+        };
+        this.shop.push(st);
+      });
+    },
   },
 };
 </script>
-<style>
+<style scope lang="scss">
 .foot {
   position: fixed;
   right: 0;
@@ -699,11 +1263,17 @@ export default {
 </style>
 
 <style scoped lang="scss">
-.el-input {
+/* .el-input {
   margin-left: 8px;
 }
+*/
+:deep(.el-form-item) {
+  margin-right: 0;
+}
+
 :deep(.el-form-item__content) {
-  margin-left: 8px;
+  width: 200px !important;
+  margin: 0 8px;
 }
 .el-fr-d {
   width: 100%;
@@ -741,4 +1311,79 @@ export default {
   display: flex;
   align-items: flex-end;
 }
+
+// 新增行
+.add_row {
+  display: flex;
+  justify-content: space-between;
+}
+
+// 统计行
+.statistics_row {
+  margin: 10px 0;
+  font-size: 14px;
+  zoom: 0.9;
+  display: flex;
+
+  > div {
+    margin-right: 20px;
+  }
+}
+
+// 卡片容器
+.crad_container {
+  display: flex;
+
+  .card_container_item {
+    flex: 1;
+    // padding: 10px;
+    border-radius: 5px;
+    box-shadow: 0 0 5px #ccc;
+
+    &:first-child {
+      margin-right: 20px;
+    }
+
+    .card_container_item_title {
+      padding: 10px;
+      border-bottom: 1px solid #ccc;
+      display: flex;
+      justify-content: space-between;
+      align-items: center;
+    }
+
+    .card_container_item_box {
+      padding: 10px;
+    }
+  }
+}
+
+.pointer {
+  cursor: pointer;
+}
+
+// 新增线路
+.addLine_list {
+  width: 100%;
+
+  .list_row {
+    display: flex;
+    height: 30px;
+    border: 1px solid #ccc;
+    border-radius: 5px;
+
+    .list_row_title {
+      width: 50%;
+    }
+  }
+}
+
+:deep(.el-step:last-of-type .el-step__description) {
+  margin-right: 10%;
+}
+
+.popUpselect :deep(.el-select__popper) {
+  inset: auto !important;
+  top: 110% !important;
+}
 </style>
diff --git a/vite.config.js b/vite.config.js
index 2ecced33..279d8917 100644
--- a/vite.config.js
+++ b/vite.config.js
@@ -18,9 +18,13 @@ export default ({ mode, command }) => {
           // lmy
           // target: 'http://192.168.10.123:8889',
           // target: 'http://192.168.10.101:8888',
-          target: 'http://192.168.10.75:8777',
+          // target: 'http://192.168.10.75:8777',
           // tjj
+<<<<<<< HEAD
           // target: 'http://192.168.10.25:13000',
+=======
+          target: 'http://192.168.10.25:13000',
+>>>>>>> 1fe2aeedc042f5201a0822d0f3debfa60899e91a
           // sst
           // target: 'http://192.168.10.94:8888',
           // target: 'http://test.api.huitongys.com',