//装车反馈
<template>
  <div class="container">
    <el-row>
      <el-col :span="12">
        <h2 class="bg-left title">火运装车反馈</h2>
      </el-col>
      <el-col :span="12" class="bg-right">
        <el-button class="bg-bottom" type="primary" size="small" @click="revert()">
          <img width="6" height="10" style="vertical-align: bottom; margin-right: 3px"
            src="../../../public/img/lujing.png" alt />返回
        </el-button>
      </el-col>
    </el-row>
    <ws-form class="position" ref="deptBudgetList" :rules="rules" :model="deptBudgetList">
      <div class="small-title" style="font-size: 16px">任务详情</div>
      <ws-info-table>
        <!--任务编号-->
        <ws-form-item label="任务编号" span="1" prop="processNo">{{ deptBudgetList.processNo }}</ws-form-item>
        <!--货名-->
        <ws-form-item label="货名" span="1" prop="goodsName">{{ deptBudgetList.goodsName }}</ws-form-item>
        <!--重量（吨）-->
        <ws-form-item label="重量（吨）" span="1" prop="weight">{{ deptBudgetList.weight }}</ws-form-item>
        <!--发货地址-->
        <ws-form-item label="发货地址" span="1" prop="sendDetailedAddress">
          {{ deptBudgetList.sendPrivate }}{{ deptBudgetList.sendCity
          }}{{ deptBudgetList.sendArea }}
        </ws-form-item>
        <!--发货人-->
        <ws-form-item label="发货人" span="1" prop="sender" class="readonly">{{ deptBudgetList.sender }}</ws-form-item>
        <!--发货人电话-->
        <ws-form-item label="发货人电话" span="1" prop="senderPhone" class="readonly">{{ deptBudgetList.senderPhone }}
        </ws-form-item>
        <!--收货地址-->
        <ws-form-item label="收货地址" span="1" prop="receiveDetailedAddress">
          {{ deptBudgetList.receivePrivate }}{{ deptBudgetList.receiveCity
          }}{{ deptBudgetList.receiveArea }}
        </ws-form-item>
        <!--收货人-->
        <ws-form-item label="收货人" span="1" prop="receiver">{{ deptBudgetList.receiver }}</ws-form-item>
        <!--收货人电话-->
        <ws-form-item label="收货人电话" span="1" prop="receiverPhone">{{ deptBudgetList.receiverPhone }}</ws-form-item>
        <!--发货日期-->
        <ws-form-item label="发货日期" span="1" prop="deliveryDateStart">{{ deptBudgetList.deliveryDateStart }}
        </ws-form-item>
        <!--最晚到货日期-->
        <ws-form-item label="最晚到货日期" span="1" prop="deliveryDateEnd">{{ deptBudgetList.deliveryDateEnd }}</ws-form-item>
        <!--合同编号-->
        <ws-form-item label="合同编号" span="1" prop="contractNo">{{ deptBudgetList.contractNo }}</ws-form-item>
        <!-- 运输方式 -->
        <ws-form-item label="运输方式" span="1" prop="tranType">{{ deptBudgetList.tranType }}</ws-form-item>
      </ws-info-table>
      <div class="small-title" style="font-size: 16px">联络员及车次</div>
      <div class="lianluoyuan">
        <ws-info-table>
          <!--姓名-->
          <ws-form-item label="姓名:" span="1" prop="driver">
            <span>{{ deptBudgetList.driver }}</span>
          </ws-form-item>
          <!--电话-->
          <ws-form-item label="电话:" span="1" prop="driverPhone">
            <span>{{ deptBudgetList.driverPhone }}</span>
          </ws-form-item>
          <!--发车日期-->
          <el-form-item label="发车日期:" span="1" prop="sendDateStart">
            <ws-date-picker v-model="deptBudgetList.sendDateStart" type="date" style="width: 150px" placeholder="请选择日期"
              value-format="yyyy-MM-dd" />
          </el-form-item>
          <!--预计到站日期-->
          <ws-form-item label="预计到站日期:" span="1" prop="receiveDateEnd">
            <span>{{ deptBudgetList.receiveDateEnd }}</span>
          </ws-form-item>
          <!--车型-->
          <ws-form-item label="车型:" span="1" prop="caeModel">
            <span>{{ deptBudgetList.carModel }}</span>
          </ws-form-item>
        </ws-info-table>
      </div>
      <div class="small-title" style="font-size: 16px">装车详情</div>
      <!-- 导入 -->
      <div style="font-size: 16px; width: 100%;  text-align: right;display:flex;justify-content:end;">
        <el-link
          href="https://taohaoliang.oss-cn-beijing.aliyuncs.com/pcfiles/%E5%8F%8D%E9%A6%88%E6%A8%A1%E6%9D%BF/%E7%81%AB%E8%BF%90%E8%A3%85%E8%BD%A6%E5%8F%8D%E9%A6%88%E6%A8%A1%E6%9D%BF.xlsx"
          style="margin-left: 8px;">
          <el-button type="primary">模板下载</el-button>
        </el-link>
        <el-upload style="margin-left: 8px;" class="upload-demo inline-block margin-right-10" action
          :on-change="handleChange" :show-file-list="false"
          accept=".csv, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel"
          :auto-upload="false">
          <el-button type="primary">导入</el-button>
        </el-upload>
      </div>
      <div class="liaison" v-if="file_is_show">
        <div style="width: 100%" class="flex position" v-for="(item, index) in freightspace" :key="index">
          <ws-info-table>
            <!--车厢号-->
            <div class="catNos">车厢-{{ index + 1 }}</div>
            <ws-form-item label="车厢号:" span="1" prop="boxNo">
              <span>{{ item.boxNo }}</span>
            </ws-form-item>
            <!--装车净重-->
            <ws-form-item label="装车净重：" span="1" prop="loadNetWeight">
              <ws-input v-if="item.status == '已装车' || item.status == '已送达'" :disabled="readonly"
                v-model="item.loadNetWeight" placeholder="请输入装车净重" maxlength="20" size="small" />
              <ws-input v-else v-model="item.loadNetWeight" placeholder="请输入装车净重" maxlength="20" size="small" />
            </ws-form-item>
            <!--磅单-->
            <ws-form-item label="磅单：" span="1" prop="loadPoundImg">
              <template slot-scope="scope">
                <!-- slot-scope="scope" -->
                <el-upload action="https://www.zthymaoyi.com/upload/admin" :show-file-list="false" :on-success="
                    (res) => {
                      uploadSuccessHandle1(res, index)
                    }
                  " class="avatar-uploader" accept=".jpg, .jpeg, .png, .gif">
                  <img width="18" height="20" style="vertical-align: text-top; position: relative"
                    src="../../../public/img/fujian.png" alt />
                </el-upload>
                <span v-if="item.imgCount > 0">{{item.imgCount}}</span>
                <span v-if="item.imgCount == 0">未上传</span>
              <el-button v-if="item.imgCount>0" class="bg-bottom-preview" type="primary" size="small" :data-img="item.loadPoundImg" @click="$imgPreview">预览</el-button>
              </template>
            </ws-form-item>
            <!--箱号-->
            <!--装车日期-->
            <el-form-item label="装车日期:" span="1" prop="loadingDate">
              <ws-date-picker v-if="item.status == '已装车' || item.status == '已送达'" :disabled="readonly"
                v-model="item.loadingDate" type="date" style="width: 150px" placeholder="请选择日期"
                value-format="yyyy-MM-dd" />
              <ws-date-picker v-else v-model="item.loadingDate" type="date" style="width: 150px" placeholder="请选择日期"
                value-format="yyyy-MM-dd" />
            </el-form-item>

            <!-- 提交 -->
            <span class="servicein" v-show="item.status == '已装车' || item.status == '已送达'">已装车</span>
            <span style="text-align: right;" class="noservicein" v-if="
                item.status == '' ||
                item.status == null ||
                item.status == '未装车'
              ">
              <!-- <div>
                <el-button class="bg-bottom" type="primary" size="small" @click="submit(index)">提交</el-button>
              </div> -->
              未装车
            </span>
            <!-- <div
              v-show="
                item.temporaryDriverFlag == 0 && item.signStatus == '未签合同'
              "
              class="signStatus"
            >
              {{ item.signStatus }}
            </div>
            <div
              v-show="
                item.temporaryDriverFlag == 0 && item.signStatus == '已签合同'
              "
              class="signStatus1"
            >
              {{ item.signStatus }}
            </div>-->
            <span v-show="item.temporaryDriverFlag != 0" width="22" height="22" class="del" @click="del(index)"
              src="../../../public/img/del.png" alt>×</span>
          </ws-info-table>
        </div>
      </div>
      <div style="text-align: right; color: #8890b1; font-size: 16px">
        合计(吨)：{{ total }}/{{ deptBudgetList.weight }}
        <!--阶段状态-->
        <span class="noservice" v-show="deptBudgetList.feedbackStatus=='执行中'">未完货</span>
        <span class="service" v-show="deptBudgetList.feedbackStatus=='已完货'">
          {{
          deptBudgetList.feedbackStatus
          }}
        </span>
      </div>
      <!-- <el-button class="add bg-bottom" type="primary" size="small" @click="add">
        <img width="22" height="22" src="../../../public/img/add.png" alt="" />
        <div class="spans">添加临时用车</div></el-button
      >-->
    </ws-form>
    <!-- 完货 -->
    <div style="text-align: right; padding: 10px" class="wanhuo">
       <el-button class="bg-bottom" type="primary" size="small" @click="submit(index)">提交</el-button>
      <el-button class="bg-bottom" type="primary" size="small" @click="finished(deptBudgetList)">完货</el-button>
    </div>
  </div>
</template>
<script>
  import {
    regionData
  } from 'element-china-area-data'
  import {
    seeCat,
    feedback,
    state
  } from '@/model/transport/index'
  import WsUpload from '@/components/WsUpload'
  import mapDrag from '@/components/mapdrag/mapdrag'
  export default {
    name: 'viewSpareMoney',
    components: {
      WsUpload,
      mapDrag
    },
    watch: {
      vesselId(val) {
        this.getVesselData()
      },
      isShow(val) {
        this.showType = val
      },
      freightspace(newVal) {
        this.file_is_show = false
        if (true) {
          this.$nextTick(() => { // $nextTick 是在 DOM 更新循环结束之后执行延迟回调
            this.file_is_show = true
          })
        }
      }
    },
    data() {
      return {
        excelFreightspace: [],
        index: 0,
        file_is_show: true,
        deptBudgetList: {
          totalStorage: 0
        },
        options_: regionData,
        heightData: '600px',
        zoom: 7,
        selectedOptions: [],
        center: [116.244694, 39.517344],
        window: '',
        radio: 1,
        personCharge: [],
        district: null,
        driverList: [],
        readonly: true,
        listDate: {
          country: '中国',
          level: 'country',
          city: ''
        },
        citylist: [],
        compId: sessionStorage.getItem('ws-pf_compId'),
        rules: {
          warehouseName: [{
              required: true,
              message: '请输入仓库名称',
              trigger: 'blur'
            },
            {
              min: 2,
              max: 20,
              message: '仓库名长度不符合要求，请输入2-20字符之内',
              trigger: 'blur'
            }
          ]
        },
        tranType: 2,
        size: 10,
        value1: '',
        unitList: [],

        freightspace1: [{
          accountTypeFlag: '1',
          payeeName: '',
          payeeNumberCard: '',
          compName: '',
          bankDeposit: '',
          addressUrlArray: [],
          bankCard: ''
        }],
        freightspace: [{
            boxNo: '',
            loadNetWeight: '',
            loadPoundImg: '',
            loadingDate: '',
            imgCount: 0
          }
          // {loadPoundImg:{}},
        ],
        name: '',
        staffList: [],
        options: [],
        carModel: [],
        fileTemp: {},
        tranCarInfoList: {
          loadPoundImg: ''
        },
        //  tranCarList: {
        //   driver: '',
        //   driverPhone:'',
        //   sendDateStart:'',
        //   receiveDateEnd:'',
        //   carModel:'',
        // },
        //上传
        accessoryTFs: false,
        fileList: [],
        appendixIdsAdd: '',
      }
    },
    activated() {
      this.deptBudgetList.id = this.$route.query.id
      this.getList()
    },
    computed: {
      totalStorage: function() {
        var maxStorage = 0
        for (var i = 0; i < this.freightspace.length; i++) {
          maxStorage += Number(this.freightspace[i].maxStorage)
        }
        return maxStorage
      },
      total: function() {
        if (this.deptBudgetList.tranCarInfoList != null) {
          var maxStorage = 0
          for (var i = 0; i < this.deptBudgetList.tranCarInfoList.length; i++) {
            maxStorage += Number(
              this.deptBudgetList.tranCarInfoList[i].loadNetWeight
            )
          }
          return maxStorage
        } else {
          return 0
        }
      }
    },
    methods: {
      handleChange(file, fileList) {
        this.fileTemp = file.raw
        let fileName = file.raw.name
        let fileType = fileName.substring(fileName.lastIndexOf('.') + 1)
        // 判断上传文件格式
        if (this.fileTemp) {
          if (fileType == 'xlsx' || fileType == 'xls') {
            this.importf(this.fileTemp)
          } else {
            this.$message({
              type: 'warning',
              message: '附件格式错误，请删除后重新上传！'
            })
          }
        } else {
          this.$message({
            type: 'warning',
            message: '请上传附件！'
          })
        }
      },
      importf(obj) {
        this.excelFreightspace = []
        this.dialogVisible = true
        let _this = this
        let inputDOM = this.$refs.inputer // 通过DOM取文件数据
        this.file = event.currentTarget.files[0]
        var rABS = false //是否将文件读取为二进制字符串
        var f = this.file
        var reader = new FileReader()
        //if (!FileReader.prototype.readAsBinaryString) {
        FileReader.prototype.readAsBinaryString = function(f) {
          var binary = ''
          var rABS = false //是否将文件读取为二进制字符串
          var pt = this
          var wb //读取完成的数据
          var outdata
          var reader = new FileReader()
          reader.onload = function(e) {
            var bytes = new Uint8Array(reader.result)
            var length = bytes.byteLength
            for (var i = 0; i < length; i++) {
              binary += String.fromCharCode(bytes[i])
            }
            var XLSX = require('xlsx')
            if (rABS) {
              wb = XLSX.read(btoa(fixdata(binary)), {
                //手动转化
                type: 'base64'
              })
            } else {
              wb = XLSX.read(binary, {
                type: 'binary'
              })
            }
            // outdata就是你想要的东西 excel导入的数据
            outdata = XLSX.utils.sheet_to_json(wb.Sheets[wb.SheetNames[0]])
            // excel 数据再处理
            let arr = []
            outdata.map(v => {
              // let jsonString = JSON.stringify(v).replace(/\*/g, '').replace(/\s/ig,'');
              let jsonString = JSON.stringify(v)
                .replace(/\//g, '')
                .replace(/\s/gi, '')
              console.log(jsonString)
              v = JSON.parse(jsonString)
              let obj = {}
              //xxx代表列名
              obj.boxNo = v.车厢号
              obj.loadNetWeight = v.装车净重
              obj.loadingDate = v.装车日期
              obj.status = v.状态
              obj.loadPoundImg = v.磅单
              console.log(obj)
              _this.excelFreightspace.push(obj)
            })
            let _ispushData = true
            console.log(arr, _this.freightspace)
            for (let i = 0; i < _this.excelFreightspace.length; i++) {
              _ispushData = true
              for (let k = 0; k < _this.freightspace.length; k++) {
                if (_this.excelFreightspace[i].boxNo == _this.freightspace[k].boxNo) {
                  _this.freightspace[k] = _this.excelFreightspace[i]
                  if (_this.excelFreightspace[i].loadPoundImg.split(',').length > 0){
                      _this.freightspace[k].imgCount = _this.excelFreightspace[i].loadPoundImg.split(',').length
                  }
                  _ispushData = false
                }
              }
              if (_ispushData) {
                if (_this.excelFreightspace[i].loadPoundImg.split(',').length > 0) {
                  _this.excelFreightspace[i].imgCount = _this.excelFreightspace[i].loadPoundImg.split(',').length
                }
                _this.freightspace.push(_this.excelFreightspace[i])

                _ispushData = true
              }
            }
            _this.$forceUpdate();
          }
          reader.readAsArrayBuffer(f)
        }
        if (rABS) {
          reader.readAsArrayBuffer(f)
        } else {
          reader.readAsBinaryString(f)
        }
        console.log(reader)
      },
      marker: function(item) {
        this.deptBudgetList.warehousePositioning =
          item.lnglat.lat + ',' + item.lnglat.lng
      },
      // 关闭 dialog时 处理文件url 初始化upload组件
      handleClose() {
        this.dialogViewSpareMoney = false
      },
      add() {
        this.freightspace.push({
          driver: '',
          driverPhone: '',
          carNo: '',
          loadNetWeight: ''
        })
      },
      del(index) {
        if (this.freightspace.length > 1) {
          this.freightspace.splice(index, 1)
        }
      },
      revert() {
        this.$router.push({
          path: 'tranManagementTransporHairRespond'
        })
      },
      //完货
      finished() {
        this.$confirm(`完货操作后，装车信息不可修改，是否确定完货？`, {
            confirmButtonText: '确定',
            cancelButtonText: '取消',
            type: 'warning'
          })
          .then(() => {
            this.$refs.deptBudgetList.validate(valid => {
              if (valid) {
                var tranProcessInfo = {}
                tranProcessInfo.id = this.deptBudgetList.id
                state(tranProcessInfo)
                  .toPromise()
                  .then(response => {
                    this.$message.success('完货成功')
                    this.deptBudgetList = {}
                    this.freightspace = {}
                    this.selectedOptions = ''
                    this.$router.push({
                      path: 'tranManagementTransporHairRespond'
                    })
                  })
              } else {
                return false
              }
            })
          })
          .catch(() => {
            return false
          })
      },
      validateFunc() {
        this.$refs.deptBudgetList.validate(valid => {
          if (valid) {
            console.log(this.freightspace,"数组")
            
            // this.deptBudgetList.totalStorage = this.totalStorage
            // this.tranCarInfoList = this.freightspace
            // this.tranCarInfoList.driver = this.deptBudgetList.driver
            // this.tranCarInfoList.driverPhone = this.deptBudgetList.driverPhone
            // this.tranCarInfoList.tranCarNo = this.deptBudgetList.tranCarNo
            // this.tranCarInfoList.carNo = this.deptBudgetList.carNo
            // this.tranCarInfoList[0].sendDateStart = this.deptBudgetList.sendDateStart
            // this.tranCarInfoList.loadNetWeight = this.deptBudgetList.loadNetWeight
            // this.tranCarInfoList.tranType = this.tranType
            // this.tranCarInfoList.loadPoundImg = this.deptBudgetList.loadPoundImg
            // this.tranCarInfoList.boxNo = this.arr.toString()
            // for (var i = 0; i < this.tranCarInfoList.length; i++) {
            //   this.tranCarInfoList[i].id = this.freightspace[i].id
            //   if (this.tranCarInfoList[i].temporaryDriverFlag != 0) {
            //     this.tranCarInfoList[i].temporaryDriverFlag = 1
            //     this.tranCarInfoList[i].tranType = this.tranType
            //   }
            // }
            // var tranProcessInfo = {}
            // tranProcessInfo.id = this.deptBudgetList.id
            // tranProcessInfo.infoId = this.deptBudgetList.infoId
            // tranProcessInfo.processNo = this.deptBudgetList.processNo
            // tranProcessInfo.tranPrice = this.deptBudgetList.tranPrice
            // tranProcessInfo.tranCarInfoList = this.tranCarInfoList
            // dispatchCat({tranCarInfo:{tranCarInfoList:[this.tranCarInfoList],id:this.deptBudgetList.id}
            let tranCar = {}
            tranCar.infoId = this.deptBudgetList.infoId
             tranCar.id = this.deptBudgetList.id
            tranCar.infoId = this.deptBudgetList.infoId
            tranCar.processNo = this.deptBudgetList.processNo
            tranCar.tranPrice = this.deptBudgetList.tranPrice
            tranCar.tranCarInfoList = this.freightspace
            feedback(tranCar)
              .toPromise()
              .then(response => {
                this.$message.success('提交成功')
                this.deptBudgetList = {}
                this.freightspace = {}
                this.selectedOptions = ''
                this.$router.push({
                  path: 'tranManagementTransporHairRespond'
                })
              })
          } else {
            // EventBus.$emit('error', this.$t('showMessage.asteriskRequired'))
            return false
          }
        })
      },
      submit(index) {
        for (var i = 0; i < this.freightspace.length; i++) {
        // if (!this.freightspace[i].driver) {
        //   this.$message({
        //     message: '司机姓名不能为空！',
        //     type: 'warning'
        //   })
        //   return
        // }
        // if (!this.freightspace[i].driverPhone) {
        //   this.$message({
        //     message: '司机电话不能为空！',
        //     type: 'warning'
        //   })
        //   return
        // }
        // if (!this.freightspace[i].carNo) {
        //   this.$message({
        //     message: '车牌号不能为空！',
        //     type: 'warning'
        //   })
        //   return
        // }
        if (!this.freightspace[i].loadNetWeight) {
          this.$message({
            message: '装车净重不能为空！',
            type: 'warning'
          })
          return
        }
        if (
          this.freightspace[i].loadNetWeight < 0 ||
          this.freightspace[i].loadNetWeight > 10000
        ) {
          this.$message({
            message: '装车净重输入错误！',
            type: 'warning'
          })
          return
        }
         if (!this.freightspace[i].loadingDate) {
          this.$message({
            message: '装车日期不能为空！',
            type: 'warning'
          })
          return
        }
        }
        // if (!this.freightspace[index].loadNetWeight) {
        //   this.$message({
        //     message: '装车净重不能为空！',
        //     type: 'warning'
        //   })
        //   return
        // }
        // if (
        //   this.freightspace[index].loadNetWeight < 0 ||
        //   this.freightspace[index].loadNetWeight > 10000
        // ) {
        //   this.$message({
        //     message: '装车净重输入错误！',
        //     type: 'warning'
        //   })
        //   return
        // }
        // if (!this.freightspace[index].loadingDate) {
        //   this.$message({
        //     message: '装车日期不能为空！',
        //     type: 'warning'
        //   })
        //   return
        // }

        // }
        if (sessionStorage.getItem('sh-msg')) {
          this.validateFunc()
        } else {
          this.$alert(
              '<div><strong>提交成功后提醒司机及时签订运输合同，确定提交装车信息？</strong><div style="display:flex;align-items: center;"><input id="noMsg" type="checkbox" onclick="window.noMessege(1)"><span style="margin-left:10px">不在提示</span><div></div>',
              '', {
                dangerouslyUseHTMLString: true,
                distinguishCancelAndClose: true,
                showCancelButton: true,
                confirmButtonText: '确定',
                cancelButtonText: '取消'
              }
            )
            .then(() => {
              this.validateFunc()
            })
            .catch(() => {
              return false
            })
        }
      },
      getList() {
        seeCat({
            id: this.deptBudgetList.id
          })
          .toPromise()
          .then(response => {
            this.deptBudgetList = response
            //  this.deptBudgetList.tranCarInfoList = response.tranCarInfoList
            if (response.tranCarInfoList[0].driver) {
              this.deptBudgetList.driver = response.tranCarInfoList[0].driver
            }
            this.deptBudgetList.driverPhone =
              response.tranCarInfoList[0].driverPhone
            this.$set(this.deptBudgetList, 'sendDateStart', response.tranCarInfoList[0].sendDateStart)
            this.deptBudgetList.receiveDateEnd =
              response.tranCarInfoList[0].receiveDateEnd
            this.deptBudgetList.carModel = response.tranCarInfoList[0].carModel
            this.freightspace = response.tranCarInfoList
            for (var i = 0; i < this.freightspace.length; i++) {
              if (!this.freightspace[i].loadNetWeight) {
                this.freightspace[i].loadNetWeight = 0
              }
              if (this.freightspace[i].loadPoundImg) {
                this.freightspace[i].imgCount = this.freightspace[i].loadPoundImg.split(",").length
              } else {
                this.freightspace[i].loadPoundImg = ""
                this.freightspace[i].imgCount = 0
              }
            }
          })
      },
      uploadSuccessHandle1(e, index) {
        this.index = index
        let that = this;
        that.$forceUpdate();
        that.freightspace[that.index].imgCount++
        if(that.freightspace[that.index].loadPoundImg){
             that.freightspace[that.index].loadPoundImg += "," + e.url  
        }else{
             that.freightspace[that.index].loadPoundImg += e.url 
        }
      }
    }
  }
</script>

<style lang="scss" scoped>
  /deep/.totalStorage .el-input__inner {
    color: #afb5cb;
    background: #f5f7fa;
  }

  .small-title {
    position: relative;
    padding: 10px;
    font-weight: 600;
  }

  .small-title::before {
    position: absolute;
    content: '';
    display: block;
    background: #5473e8;
    width: 4px;
    height: 14px;
    left: 0px;
    top: 13px;
  }

  .position {
    position: relative;
  }

  .del {
    position: absolute;
    right: -38px;
    top: 14px;
    cursor: pointer;
    right: 0;
    display: inline-block;
    font-size: 26px;
    width: 26px;
    height: 10px;
    line-height: 0px;
  }

  .amap-page-container {
    width: 300px;
    height: 300px;
  }

  .el-form {
    padding: 0 10%;
  }

  /deep/.ws-info-table .el-form-item {
    border-right: 1px solid transparent;
    border-bottom: 1px solid transparent;
  }

  .readonly {
    position: relative;
  }

  .readonly:after {
    content: '*';
    color: #ff2727;
    position: absolute;
    right: 8px;
    z-index: 10;
    top: 21%;
    font-size: 20px;
  }

  .title {
    position: relative;
  }

  .title::before {
    content: '';
    display: inline-block;
    width: 5px;
    height: 30px;
    background: #5473e8;
    position: absolute;
    left: 0;
  }

  .el-button--primary {
    background-color: #5878e8;
    border-color: #5878e8;
  }

  .el-col {
    background: #f6f7fc;
  }

  /deep/.ws-info-table .el-form-item .el-form-item__content {
    padding: 0 25px;
    border-left: 1px solid transparent;
    background: #fff;
  }

  /deep/.ws-info-table .el-form-item .el-form-item__label {
    width: 100px;
    text-align: center;
    background: #fff;
    // border: 1px solid #cdd2dc;
  }

  .button-container {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
    background-color: #fff;
    width: 100%;
    height: 50px;
    padding: 0 10px;

    &>div {
      margin-left: 10px;
      display: flex;
      flex-wrap: nowrap;
      flex-direction: row;

      &>span {
        line-height: 50px;
      }
    }

    /deep/.auditFlow-box {
      position: unset;
      margin-left: 10px;

      &/deep/.auditFlow-icon {
        width: auto;
        padding-right: 30px;
      }

      &/deep/.auditFlow-main {
        position: absolute;
      }
    }
  }

  .box-app {
    display: inline-block;
    float: left;
    margin-left: 30px;
    line-height: 50px;
  }

  /deep/.el-dialog {
    .el-form-item {
      margin-bottom: 0 !important;

      .el-input--medium {
        textarea {
          min-height: 100px !important;
        }
      }
    }
  }

  .collapse-bottom {
    margin-bottom: 20px;
  }

  .input-main .textarea .el-textarea__inner {
    width: 100%;
    z-index: 1;
  }

  .bg-left {
    padding-left: 30px;
  }

  .bg-right {
    padding-right: 10px;
    text-align: right;
  }

  .bg-bottom {
    margin: 15px 0px;
  }

  .wenzi {
    width: 900px;
    margin: 0 auto;
  }

  .wenzi h3 {
    display: inline-block;
    left: 10px;
  }

  .wenzi p {
    display: inline-block;
  }

  // .center {
  //   width: 900px;
  //   margin: -70px auto;
  //   margin-right: 92px;
  // }

  .wanhuo {
    width: 900px;
    margin: 0 auto;
  }

  .el-form-item {
    width: 50%;
  }

  .el-form-item__label {
    text-align: center;
  }

  .ce {
    width: 900px;
    margin: 0 auto;
  }

  /*.crt-main .textarea /deep/ .el-form-item__label {*/
  /*  height: 82px;*/
  /*}*/
  // 控制select为只读的时候显示样式

  .hide-sel {
    .el-input__inner {
      border: 0px;
    }

    .el-icon-arrow-up {
      display: none;
    }

    .el-textarea__inner {
      background-color: #fff !important;
      border: 0;
    }

    .el-date-editor {
      i {
        display: none;
      }
    }

    // .is-disabled {
    //   .el-input__inner:hover {
    //     background-color: #fff !important;
    //     border: 0;
    //   }
    //   color: #606266;
    //   .el-input__inner {
    //     background-color: #fff !important;
    //     border: 0;
    //     color: #606266;
    //   }
    //   .el-textarea__inner {
    //     background-color: #fff !important;
    //     border: 0;
    //     color: #606266;
    //   }
    // }
  }

  // 控制select为只读的时候显示样式
  /deep/.ws-class-table-col {
    height: auto;
    padding: 0px 2px;

    /deep/.el-input__inner {
      padding: 0px 2px;
    }
  }

  // /deep/.is-disabled {
  //   .el-input__prefix,
  //   .el-input__suffix {
  //     display: none;
  //   }
  //   .el-input__inner {
  //     background-color: #fff;
  //     border-color: #fff !important;
  //     color: #000 !important;
  //     font-size: 14px;
  //     cursor: text;
  //     padding: 0 !important;
  //   }
  // }
  .winseaview-view {
    padding: 0 0 20px;
  }

  .container {
    overflow: scroll;
    height: 93vh;
  }

  .ws-info-table .el-form-item {
    width: 33.3333%;
  }

  .readonly:after {
    display: none;
  }

  .el-textarea__inner {
    display: none;
  }

  .el-form {
    margin-top: 50px;
  }

  .readonly {
    width: 16%;
  }

  //去边框
  /deep/.el-form-item {
    border-right: 0px;
    border-bottom: 0px;
  }

  /deep/.ws-info-table {
    border-left: 0px;
    border-top: 0px;
  }

  .ws-info-table .el-form-item .el-form-item__content {
    border: none;
  }

  /deep/.ws-info-table .el-form-item {
    border: none;
    height: 50px;
  }

  /deep/.ws-info-table .el-form-item .el-form-item__content {
    background: #f5f7fa;
    border-radius: 4px;
    border: 1px solid #d8dce6;
    font-family: PingFangSC-Regular, PingFang SC;
    margin-bottom: 5px;
    background-color: #fff;
    font-size: 14px;
    font-weight: 400;
    color: #8890b1;
    line-height: 16px;
  }

  /deep/.ws-info-table .el-form-item .el-form-item__label {
    background-color: #fff;
    font-size: 13px;
    font-family: PingFangSC-Regular, PingFang SC;
    font-weight: 400;
    color: #8890b1;
    line-height: 16px;
  }

  /deep/.ws-info-table .el-form-item .el-form-item__content {
    background: #f5f7fa;
    border-radius: 4px;
    border: 1px solid #d8dce6;
  }

  /deep/.flex .ws-info-table .el-form-item .el-form-item__content {
    border: 0px;
  }

  .catNos {
    width: 5%;
    height: 30px;
    margin-top: 10px;
    margin-left: 20px;
    margin-right: -5px;
    font-size: 14px;
  }

  .catNosCor {
    color: #5473e8;
  }

  .add {
    width: 130px;
    height: 34px;
    background: #f6f7fb;
    border-radius: 17px;
    color: #5473e8;
    font-size: 14px;
    border: none;
  }

  .add img {
    display: inline-block;
    margin-top: 3px;
    margin-left: -30px;
  }

  .add .spans {
    display: table-caption;
    width: 56px;
    height: 20px;
    line-height: 18px;
  }

  .signStatus {
    height: 25px;
    border-radius: 3px;
    border: 1px solid #5473e8;
    padding: 0 3px;
    color: #ffffff;
    background: #c4cada;
    line-height: 24px;
    margin-left: 18px;
  }

  .signStatus1 {
    height: 25px;
    background: #e6ebff;
    border-radius: 3px;
    border: 1px solid #5473e8;
    padding: 0 3px;
    margin-left: 18px;
    color: #5473e8;
    line-height: 24px;
  }

  .line {
    height: 26px;
    margin-top: 6px;
    left: 2px;
  }

  //装车详情
  /deep/.liaison .ws-info-table .el-form-item {
    width: 20%;
  }

  /deep/.liaison .ws-info-table .el-form-item .el-form-item__label {
    width: 50%;
    background: #f6f7fc;
  }

  /deep/.liaison .flex {
    display: contents;
  }

  /deep/.liaison .ws-info-table {
    background: #f6f7fc;
    border-radius: 4px;
    border: 1px solid #d8dce6;
    margin-top: 20px;
  }

  /deep/.liaison .ws-info-table .el-form-item .el-form-item__content {
    padding: 0px;
  }

  //联络员及车次
  /deep/.lianluoyuan .ws-info-table .el-form-item {
    width: 20%;
  }

  /deep/.lianluoyuan .ws-info-table .el-form-item .el-form-item__label {
    width: 43%;
    background: #f6f7fc;
    padding-right: 0px;
    margin-top: 5px;
  }

  /deep/.lianluoyuan .flex {
    display: contents;
  }

  /deep/.lianluoyuan .ws-info-table {
    background: #f6f7fc;
    border-radius: 4px;
    border: 1px solid #d8dce6;
    margin-top: 20px;
  }

  /deep/.lianluoyuan .ws-info-table .el-form-item .el-form-item__content {
    padding: 0px;
    margin-top: 5px;
  }

  //装车状态
  .noservicein,
  .servicein {
    display: inline-block;
    border-radius: 4px;
    border: 1px solid #d8dce6;
    padding: 2px;
    font-size: 12px;
    background: #e5f1f7;
    color: #50cad4;
    height: 23px;
    margin-top: 11px;
    margin-left: 53px;
  }

  .noservicein {
    color: #ffffff;
    // display: inline-block;
    border: 1px solid #d8dce6;
    padding: 2px;
    font-size: 12px;
    background: #C4CADA;
  }

  .servicedin {
    display: inline-block;
    border-radius: 4px;
    border: 1px solid #d8dce6;
    padding: 2px;
    font-size: 12px;
    background: #e5f1f7;
    color: #50cad4;
    height: 23px;
    margin-top: 11px;
    margin-left: 53px;
  }

  /deep/.el-input--suffix .el-input__inner {
    padding-right: 0px !important;
  }

  //送达/未送达
  .noservice,
  .service {
    display: inline-block;
    border-radius: 4px;
    border: 1px solid #d8dce6;
    padding: 2px;
    font-size: 12px;
  }

  .noservice {
    background: #c4cada;
    color: #ffffff;
  }

  .service {
    background: #e5f1f7;
    color: #50cad4;
  }
  .bg-bottom-preview{
    margin: 0 8px;
  }
</style>
