''
liukangdong
2024-05-21 01c25b6d4ee7539c267f65a16f4ca71d8d29aa1c
''
已添加13个文件
已修改5个文件
845 ■■■■■ 文件已修改
admin/.gitignore 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/assets/style/style.scss 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/operation/danger/areaSet.vue 116 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/operation/danger/record.vue 113 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/operation/danger/typeSet.vue 104 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/operation/serviceCar/apprConfig.vue 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/operation/serviceCar/apprRecord.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/operation/serviceCar/driverConfig.vue 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/platform/LogisticsRecord/operation.vue 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/platform/LogisticsRecord/operationCity.vue 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/platform/LogisticsRecord/screen.vue 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/platform/LogisticsRecord/subscribe.vue 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/platform/LogisticsRecord/waybill.vue 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/platform/index.vue 266 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/platform/queueUp.vue 214 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/platform/set/center.vue 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/platform/set/group.vue 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/platform/set/index.vue 补丁 | 查看 | 原始文档 | blame | 历史
admin/.gitignore
@@ -2,6 +2,7 @@
coderd.json
node_modules
/dist
.env.dev*
# local env files
admin/src/assets/style/style.scss
@@ -213,12 +213,27 @@
.red{
  color: red !important;
}
.green{
  color: #83cbb2;
}
.primaryColor{
  color: $primary-color;
}
.placeholder9{
  color: #999999;
}
.placeholder6{
  color: #666666;
}
.pointer{
  cursor: pointer;
}
.table_btns{
  border-bottom: 1px solid #eee;
  padding-bottom: 10px;
}
.ml20 {
  margin-left: 20px;
  margin-left: 20px !important;
}
.mt30 {
  margin-top: 30px;
admin/src/views/operation/danger/areaSet.vue
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,116 @@
<template>
  <div class="main_app">
    <div class="mb20">
      <el-button type="primary" @click="handleEdit()">新增</el-button>
    </div>
    <el-table v-loading="loading" :data="list" stripe>
      <el-table-column
        prop="name"
        label="隐患区域"
        min-width="100"
        show-overflow-tooltip
      />
      <el-table-column
        prop="name"
        label="排序码"
        min-width="100"
        show-overflow-tooltip
      />
      <el-table-column
        prop="name"
        label="安全员"
        min-width="100"
        show-overflow-tooltip
      />
      <el-table-column
        prop="name"
        label="操作"
        min-width="80"
        align="center"
        show-overflow-tooltip
      >
        <template v-slot="scope">
          <el-button type="text" @click="handleEdit(scope.row)">编辑</el-button>
          <el-button type="text" class="red" @click="handleDel(scope.row)"
            >删除</el-button
          >
        </template>
      </el-table-column>
    </el-table>
    <pagination
      @size-change="handleSizeChange"
      @current-change="getList"
      :pagination="pagination"
    />
    <el-dialog
      :title="param.id ? '编辑隐患区域' : '新增隐患区域'"
      :visible.sync="isShowEdit"
      width="480px"
    >
      <el-form :model="param" :rules="rules" ref="ruleForm" label-width="100px">
        <el-form-item label="隐患区域" prop="name">
          <el-input v-model="param.aaa"></el-input>
        </el-form-item>
        <el-form-item label="排序码(升序)" prop="name">
          <el-input
            v-model="param.ccc"
            oninput="value=value.replace(/^(0+)|[^\d]+/g, '').slice(0, 7)"
          />
        </el-form-item>
        <el-form-item label="安全员" prop="name">
          <el-select placeholder="请选择,多选" multiple filterable>
            <el-option></el-option>
          </el-select>
        </el-form-item>
      </el-form>
      <span slot="footer" class="dialog-footer">
        <el-button @click="isShowEdit = false">取消</el-button>
        <el-button type="primary" @click="handleSub">确定</el-button>
      </span>
    </el-dialog>
  </div>
</template>
<script>
import Pagination from '@/components/common/Pagination'
export default {
  components: {
    Pagination
  },
  data () {
    return {
      loading: false,
      pagination: {
        capacity: 10,
        page: 1
      },
      list: [],
      total: 0,
      isShowEdit: false,
      param: {},
      rules: {}
    }
  },
  methods: {
    handleSub () {
      this.$refs.ruleForm.validate((valid) => {
        if (valid) {
          alert('submit!')
        }
      })
    },
    getList (page) { },
    clear () { },
    handleEdit (row) {
      this.isShowEdit = true
    },
    handleDel () { },
    handleSizeChange (capacity) {
      this.pagination.capacity = capacity
    }
  }
}
</script>
<style>
</style>
admin/src/views/operation/danger/record.vue
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,113 @@
<template>
  <div class="main_app">
    <QueryForm
      v-model="filters"
      :query-form-config="queryFormConfig"
      @handleQuery="getList(1)"
      @clear="clear"
    />
    <el-table v-loading="loading" :data="list" stripe>
      <el-table-column
        prop="name"
        label="隐患区域"
        min-width="100"
        show-overflow-tooltip
      />
      <el-table-column
        prop="name"
        label="隐患类型"
        min-width="100"
        show-overflow-tooltip
      />
      <el-table-column
        prop="name"
        label="提报人"
        min-width="100"
        show-overflow-tooltip
      />
      <el-table-column
        prop="name"
        label="提报时间"
        min-width="80"
        show-overflow-tooltip
      />
      <el-table-column
        prop="name"
        label="处理结果"
        min-width="100"
        show-overflow-tooltip
      />
      <el-table-column
        prop="name"
        label="操作"
        min-width="80"
        show-overflow-tooltip
      >
        <template v-slot="scope">
          <el-button type="text" @click="handleDetail(scope.row)">查看详情</el-button>
        </template>
      </el-table-column>
    </el-table>
    <pagination
      @size-change="handleSizeChange"
      @current-change="getList"
      :pagination="pagination"
    />
  </div>
</template>
<script>
import Pagination from '@/components/common/Pagination'
import QueryForm from '@/components/common/QueryForm'
export default {
  components: {
    Pagination,
    QueryForm
  },
  data () {
    return {
      filters: {},
      loading: false,
      queryFormConfig: {
        formItems: [
          {
            filed: 'name',
            type: 'select',
            label: '隐患区域',
            options: []
          },
          {
            filed: 'name',
            type: 'select',
            label: '隐患类型',
            options: []
          },
          {
            filed: 'selDate',
            type: 'daterange',
            label: '隐患提报日期'
          }
        ],
        online: true
      },
      pagination: {
        capacity: 10,
        page: 1
      },
      list: [],
      total: 0
    }
  },
  methods: {
    handleDetail () {},
    getList (page) { },
    clear () { },
    handleSizeChange (capacity) {
      this.pagination.capacity = capacity
    }
  }
}
</script>
<style>
</style>
admin/src/views/operation/danger/typeSet.vue
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,104 @@
<template>
  <div class="main_app">
    <div class="mb20">
      <el-button type="primary" @click="handleEdit()">新增</el-button>
    </div>
    <el-table v-loading="loading" :data="list" stripe>
      <el-table-column
        prop="name"
        label="隐患类型"
        min-width="100"
        show-overflow-tooltip
      />
      <el-table-column
        prop="name"
        label="排序码"
        min-width="100"
        show-overflow-tooltip
      />
      <el-table-column
        prop="name"
        label="操作"
        min-width="80"
        align="center"
        show-overflow-tooltip
      >
        <template v-slot="scope">
          <el-button type="text" @click="handleEdit(scope.row)">编辑</el-button>
          <el-button type="text" class="red" @click="handleDel(scope.row)"
            >删除</el-button
          >
        </template>
      </el-table-column>
    </el-table>
    <pagination
      @size-change="handleSizeChange"
      @current-change="getList"
      :pagination="pagination"
    />
    <el-dialog
      :title="param.id ? '编辑隐患区域' : '新增隐患区域'"
      :visible.sync="isShowEdit"
      width="480px"
    >
      <el-form :model="param" :rules="rules" ref="ruleForm" label-width="100px">
        <el-form-item label="隐患类型" prop="name">
          <el-input v-model="param.aaa"></el-input>
        </el-form-item>
        <el-form-item label="排序码(升序)" prop="name">
          <el-input
            oninput="value=value.replace(/^(0+)|[^\d]+/g, '').slice(0, 7)"
          />
        </el-form-item>
      </el-form>
      <span slot="footer" class="dialog-footer">
        <el-button @click="isShowEdit = false">取消</el-button>
        <el-button type="primary" @click="handleSub">确定</el-button>
      </span>
    </el-dialog>
  </div>
</template>
<script>
import Pagination from '@/components/common/Pagination'
export default {
  components: {
    Pagination
  },
  data () {
    return {
      loading: false,
      pagination: {
        capacity: 10,
        page: 1
      },
      list: [],
      total: 0,
      isShowEdit: false,
      param: {},
      rules: {}
    }
  },
  methods: {
    handleSub () {
      this.$refs.ruleForm.validate((valid) => {
        if (valid) {
          alert('submit!')
        }
      })
    },
    getList (page) { },
    clear () { },
    handleEdit (row) {
      this.isShowEdit = true
    },
    handleDel () { },
    handleSizeChange (capacity) {
      this.pagination.capacity = capacity
    }
  }
}
</script>
<style>
</style>
admin/src/views/operation/serviceCar/apprConfig.vue
@@ -9,9 +9,7 @@
        <div class="config_list">
          <div class="config_list_head">
            <span>流程配置</span>
            <el-button style="background: #435ebe" type="primary"
              >发布</el-button
            >
            <el-button type="primary">发布</el-button>
          </div>
          <div class="config_content">
            <div class="item active">
admin/src/views/operation/serviceCar/apprRecord.vue
@@ -101,7 +101,7 @@
          {
            filed: 'name',
            type: 'select',
            label: '选择目的地类别',
            label: '目的地类别',
            options: []
          },
          {
admin/src/views/operation/serviceCar/driverConfig.vue
@@ -6,7 +6,7 @@
      @handleQuery="getList(1)"
      @clear="clear"
    />
    <div class="ml20">
    <div class="ml20 mt20">
      <el-button type="primary" @click="handleEdit()">添加</el-button>
    </div>
    <el-table v-loading="loading" :data="list" stripe>
@@ -59,12 +59,12 @@
        label-width="100px"
      >
        <el-form-item label="选择组织" prop="name">
          <el-select placeholder="请选择,单选" filterable>
          <el-select placeholder="请选择,单选" class="w300" filterable>
            <el-option></el-option>
          </el-select>
        </el-form-item>
        <el-form-item label="选择人员" prop="name">
          <el-select placeholder="请选择,单选" filterable>
          <el-select placeholder="请选择,单选"  class="w300" filterable>
            <el-option></el-option>
          </el-select>
        </el-form-item>
@@ -103,7 +103,7 @@
        capacity: 10,
        page: 1
      },
      list: [],
      list: [{}],
      total: 0,
      isShowEdit: false,
      param: {},
admin/src/views/platform/LogisticsRecord/operation.vue
admin/src/views/platform/LogisticsRecord/operationCity.vue
admin/src/views/platform/LogisticsRecord/screen.vue
admin/src/views/platform/LogisticsRecord/subscribe.vue
admin/src/views/platform/LogisticsRecord/waybill.vue
admin/src/views/platform/index.vue
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,266 @@
<template>
  <div class="main_app">
    <div class="df_ac mb20">
      <el-select v-model="currentPlatform" class="w300">
        <el-option v-for="item in platformList" :key="item.id"></el-option>
      </el-select>
      <el-button type="primary" class="ml20" @click="handleSet"
        >配置月台</el-button
      >
    </div>
    <!--  -->
    <div class="platform_list">
      <div class="item" v-for="i in 2">
        <div class="head">
          <div class="name">6号月台</div>
          <div class="status">
            <span class="green">作业中</span>
            <span class="">作业:1</span>
            <span>叫号:1</span>
            <span>等待:1</span>
            <span class="red">异常:1</span>
          </div>
          <el-button type="primary">叫号</el-button>
        </div>
        <div class="info" v-for="j in 3">
          <div class="line">
            <div class="left">
              <span class="plate mr20">皖A12122</span>
              <span class="placeholder9">驾驶员</span>
              <span>王某某</span>
              <span>18888888888</span>
            </div>
            <div class="right">
              <span class="green">作业中</span>
              <span class="placeholder9 ml20">作业时长:23分钟26秒</span>
            </div>
          </div>
          <div class="line">
            <div class="left">
              <div>
                <span>运输单号</span
                ><span class="ml10 placeholder9">1231231</span>
              </div>
              <div>
                <span>总运输量</span
                ><span class="ml10 placeholder9">3000万支</span
                ><span class="primaryColor ml10 pointer" @click="isShowDetail = true">运单详情</span>
              </div>
            </div>
            <div class="right">
              <el-button type="primary" @click="handleFinish()"
                >作业完成</el-button
              >
              <el-button plain>转移月台</el-button>
              <el-button plain>异常挂起</el-button>
            </div>
          </div>
        </div>
      </div>
    </div>
    <!-- é…ç½®æ˜¾ç¤ºæœˆå° -->
    <el-dialog
      title="配置显示月台"
      :visible.sync="isShowSet"
      center
      width="420px"
    >
      <div class="set_modal">
        <div class="mb20">
          <div class="title">入库月台组</div>
          <div class="list">
            <div class="item">1号月台</div>
            <div class="item">2号月台</div>
            <div class="item">1号月台</div>
            <div class="item">2号月台</div>
          </div>
        </div>
        <div>
          <div class="title">入库月台组</div>
          <div class="list">
            <div class="item">1号月台</div>
            <div class="item">2号月台</div>
            <div class="item">1号月台</div>
            <div class="item">2号月台</div>
          </div>
        </div>
      </div>
      <span slot="footer" class="dialog-footer">
        <el-button @click="setReset">重置</el-button>
        <el-button type="primary" @click="setSub">确定</el-button>
      </span>
    </el-dialog>
    <!-- è¿å•详情 -->
    <el-dialog
      title="运单详情"
      :visible.sync="isShowDetail"
      width="420px"
    >
      <div class="detail_modal">
        <div class="head">
          <div class="line">
            <span class="ccc">运输单号</span>
            <span>28282</span>
          </div>
          <div class="line">
            <span class="ccc">运输车辆</span>
            <span>皖A12122</span>
          </div>
          <div class="line">
            <span class="ccc">驾驶员</span>
            <span>王德发</span>
            <span>1888888</span>
          </div>
          <div class="line">
            <span class="ccc">总运输量</span>
            <span>28282万支</span>
          </div>
        </div>
        <div class="content">
          <div class="item">
            <div class="line">
              <div>合同号:1292992</div>
              <div class="address">收货地:address</div>
            </div>
            <div class="line">
              <div>物料名称:黄山</div>
              <div>数量:700</div>
            </div>
            <div class="line">
              <div>物料名称:黄山</div>
              <div>数量:200</div>
            </div>
          </div>
        </div>
      </div>
      <span slot="footer" class="dialog-footer">
        <el-button @click="isShowDetail = false">关闭</el-button>
      </span>
    </el-dialog>
  </div>
</template>
<script>
export default {
  data() {
    return {
      currentPlatform: '',
      platformList: [],
      isShowSet: false, // æœˆå°é…ç½®
      setParam: {},
      isShowDetail: false, // è¿å•详情
      detail: {}
    }
  },
  methods: {
    handleFinish(item) {
      this.$confirm('高架库6号月台 çš–A12345 ä½œä¸šç»“束', '温馨提示', {
        confirmButtonText: '确定',
        cancelButtonText: '取消',
        type: 'warning'
      })
    },
    handleSet() {
      this.isShowSet = true
    },
    setReset() { },
    setSub() { }
  }
}
</script>
<style lang="scss" scoped>
.platform_list {
  .item {
    padding: 16px 24px;
    border-radius: 2px;
    border: 2px solid #cccccc;
    margin-bottom: 12px;
    .head {
      display: flex;
      justify-content: space-between;
      .name {
        font-size: 16px;
      }
      .status {
        flex: 1;
        margin-left: 50px;
        span {
          margin-right: 30px;
        }
      }
    }
    .info {
      margin-top: 10px;
      border: 1px solid #999999;
      padding: 6px 8px;
      border-radius: 2px;
      margin-bottom: 10px;
      .line {
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin-bottom: 6px;
        .left {
          .plate {
            border: 1px solid #4969f6;
            border-radius: 2px;
            padding: 0 5px;
          }
        }
        .right {
          display: flex;
          align-items: center;
        }
      }
    }
  }
}
/*  */
.set_modal {
  .title {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 16px;
  }
  .list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    .item {
      cursor: pointer;
      width: 30%;
      height: 32px;
      background-color: #d9d9d9;
      border: 1px solid #4d99a7;
      display: flex;
      justify-content: center;
      align-items: center;
      border-radius: 6px;
      margin-bottom: 12px;
    }
  }
}
/*  */
.detail_modal {
  font-size: 12px;
  .head {
    border-bottom: 1px solid #999999;
  }
  .item {
    border-bottom: 1px solid #999999;
  }
  .line {
    display: flex;
    justify-content: space-between;
    .ccc{
      color: #999999;
    }
    .address {
      margin-right: 30px;
    }
  }
}
</style>
admin/src/views/platform/queueUp.vue
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,214 @@
<template>
  <div class="main_app">
    <div class="df_ac mb20">
      <el-select v-model="filters.currentPlatform" class="w300">
        <el-option v-for="item in platformList" :key="item.id"></el-option>
      </el-select>
      <el-input v-model="filters.id" placeholder="车牌号" class="ml20 w200" />
      <el-button type="primary" class="ml20" @click="getList()">查询</el-button>
      <el-button class="ml20" @click="clear">重置</el-button>
    </div>
    <!--  -->
    <div class="platform_list">
      <div class="item" v-for="i in 2">
        <div class="head">
          <div class="name">6号月台</div>
          <div class="status">
            <span class="green">作业中</span>
            <span class="">作业:1</span>
            <span>叫号:1</span>
            <span>等待:1</span>
            <span class="red">异常:1</span>
          </div>
          <!-- <el-button type="primary">叫号</el-button> -->
        </div>
        <div class="info" v-for="j in 3">
          <div class="line">
            <div class="left">
              <span class="plate mr20">皖A12122</span>
              <span class="placeholder9">驾驶员</span>
              <span>王某某</span>
              <span>18888888888</span>
            </div>
            <div class="right">
              <span class="green">作业中</span>
              <span class="placeholder9 ml20">作业时长:23分钟26秒</span>
            </div>
          </div>
          <div class="line">
            <div class="left">
              <div>
                <span>运输单号</span
                ><span class="ml10 placeholder9">1231231</span>
              </div>
              <div>
                <span>总运输量</span
                ><span class="ml10 placeholder9">3000万支</span
                ><span class="primaryColor ml10 pointer">运单详情</span>
              </div>
            </div>
          </div>
        </div>
      </div>
    </div>
    <!-- é…ç½®æ˜¾ç¤ºæœˆå° -->
    <el-dialog
      title="配置显示月台"
      :visible.sync="isShowSet"
      center
      width="420px"
    >
      <div class="set_modal">
        <div class="mb20">
          <div class="title">入库月台组</div>
          <div class="list">
            <div class="item">1号月台</div>
            <div class="item">2号月台</div>
            <div class="item">1号月台</div>
            <div class="item">2号月台</div>
          </div>
        </div>
        <div>
          <div class="title">入库月台组</div>
          <div class="list">
            <div class="item">1号月台</div>
            <div class="item">2号月台</div>
            <div class="item">1号月台</div>
            <div class="item">2号月台</div>
          </div>
        </div>
      </div>
      <span slot="footer" class="dialog-footer">
        <el-button @click="setReset">重置</el-button>
        <el-button type="primary" @click="setSub">确定</el-button>
      </span>
    </el-dialog>
    <!-- è¿å•详情 -->
    <el-dialog
      title="配置显示月台"
      :visible.sync="isShowSet"
      center
      width="420px"
    >
      <div class="set_modal">
        <div class="mb20">
          <div class="title">入库月台组</div>
          <div class="list">
            <div class="item">1号月台</div>
            <div class="item">2号月台</div>
            <div class="item">1号月台</div>
            <div class="item">2号月台</div>
          </div>
        </div>
        <div>
          <div class="title">入库月台组</div>
          <div class="list">
            <div class="item">1号月台</div>
            <div class="item">2号月台</div>
            <div class="item">1号月台</div>
            <div class="item">2号月台</div>
          </div>
        </div>
      </div>
      <span slot="footer" class="dialog-footer">
        <el-button @click="setReset">重置</el-button>
        <el-button type="primary" @click="setSub">确定</el-button>
      </span>
    </el-dialog>
  </div>
</template>
<script>
export default {
  data () {
    return {
      filters: {},
      platformList: [],
      isShowSet: false, // æœˆå°é…ç½®
      setParam: {},
      isShowDetail: false, // è¿å•详情
      detail: {}
    }
  },
  methods: {
    getList () { },
    clear () { }
  }
}
</script>
<style lang="scss" scoped>
.platform_list {
  .item {
    padding: 16px 24px;
    border-radius: 2px;
    border: 2px solid #cccccc;
    margin-bottom: 12px;
    .head {
      display: flex;
      justify-content: space-between;
      .name {
        font-size: 16px;
      }
      .status {
        flex: 1;
        margin-left: 50px;
        span {
          margin-right: 30px;
        }
      }
    }
    .info {
      margin-top: 10px;
      border: 1px solid #999999;
      padding: 6px 8px;
      border-radius: 2px;
      margin-bottom: 10px;
      .line {
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin-bottom: 6px;
        .left {
          .plate {
            border: 1px solid #4969f6;
            border-radius: 2px;
            padding: 0 5px;
          }
        }
        .right {
          display: flex;
          align-items: center;
        }
      }
    }
  }
}
/*  */
.set_modal {
  .title {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 16px;
  }
  .list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    .item {
      cursor: pointer;
      width: 30%;
      height: 32px;
      background-color: #d9d9d9;
      border: 1px solid #4d99a7;
      display: flex;
      justify-content: center;
      align-items: center;
      border-radius: 6px;
      margin-bottom: 12px;
    }
  }
}
</style>
admin/src/views/platform/set/center.vue
admin/src/views/platform/set/group.vue
admin/src/views/platform/set/index.vue