819527061@qq.com
2024-02-05 fbd20431d9947d6989f6508ae47ccaad96576d68
pages/jihua/jihua.vue
@@ -1,389 +1,717 @@
<template>
   <view class="jihua-wrap">
      <view class="qiehuan-box">
         <u-tabs :list="tabList" @click="tabClick"></u-tabs>
      </view>
      <view class="jihua-main">
         <view class="shaixuan-box">
            <u-radio-group v-model="radioValue" @change="groupChange">
               <u-radio style="margin-right: 30rpx;" shape="square" label="全部" name="全部"></u-radio>
               <u-radio style="margin-right: 30rpx;" shape="square" label="已设置的计划" name="已设置的计划"></u-radio>
               <!-- <u-radio shape="square" label="未设置的计划" name="未设置的计划"></u-radio> -->
            </u-radio-group>
         </view>
         <div class="main-inside">
            <view v-if="isTomJihua == '全部'">
               <view class="main-block-box" v-for="(item,index) in fyData" :key="item.id">
                  <view class="jihua-main-line">
                     <view class="name">客户名称:{{item.customerName}}</view>
                  </view>
                  <view class="jihua-main-line">
                     <view class="main-flex">
                        <view>煤种:{{ item.coalName}}</view>
                        <view>剩余量:{{ item.executiveSurplus}}</view>
                     </view>
                  </view>
                  <view class="jihua-main-line">
                     <view class="main-flex">
                        <view class="carNum-box">
                           <view>计划车数:</view>
                           <u--input
                               placeholder="请输入发运车数"
                               border="surround"
                               v-model="item.numPlan"
                               @change="inputChange"
                             ></u--input>
                        </view>
                        <view>实际发车数:{{item.numReal}}</view>
                     </view>
                  </view>
               </view>
               <u-button class="xiugai-btn" type="primary" text="提交" @click="dataFormSubmit"></u-button>
            </view>
            <view v-if="isTomJihua == '已设置的计划'">
               <view class="main-block-box" v-for="(item,index) in fyData" :key="item.id">
                  <view class="jihua-main-line">
                     <view class="name">客户名称:{{item.customerName}}</view>
                  </view>
                  <view class="jihua-main-line">
                     <view class="main-flex">
                        <view>煤种:{{ item.order ? item.order.coalName : item.coalName}}</view>
                        <view>剩余量:{{ item.order ? item.order.executiveSurplus : item.executiveSurplus}}</view>
                     </view>
                  </view>
                  <view class="jihua-main-line">
                     <view class="main-flex">
                        <view class="carNum-box">
                           <view>计划车数:</view>
                           <u--input placeholder="请输入发运车数" border="surround" v-model="item.numPlan"
                              @change="inputTotalChange(item)"></u--input>
                        </view>
                        <view>实际发车数:{{item.order ? item.order.numReal : item.numReal}}</view>
                     </view>
                  </view>
               </view>
               <u-button class="xiugai-btn" type="primary" text="修改" @click="getOrderCarNum"></u-button>
            </view>
             <!-- <u-empty
                v-if="fyData.length == 0"
                mode="data"
                icon=""
             >
            </u-empty> -->
         </div>
      </view>
      <!-- 菜单栏 -->
      <popup-menu @menuShow="menushow" ref="menuRef"></popup-menu>
   </view>
</template>
<script>
   import popupMenu from '@/components/common/popup-menu/popup-menu.vue';
   export default {
      components: {
         popupMenu
      },
      data() {
         return {
            radioValue: '全部',
            tabList: [{
               name: '今日发运计划'
            }, {
               name: '明日发运计划'
            }],
            carValue: 0,
            fyData: [],
            fyData2: [],
            info: {
               shippingDate: this.todayDate()
            },
            isTomJihua: '全部',
            editRow:'', //修改行的行
            menuShow:false,
         }
      },
      onShow() {
         if(this.menuShow == true){
            this.$refs.menuRef.menuClick()
         }
         this.init()
      },
      // 点击导航栏菜单后
      onNavigationBarButtonTap(e) {
         // console.log(e);
         this.$refs.menuRef.menuClick()
      },
      methods: {
         init() {
            this.fyList()
         },
         menushow(e){
            this.menuShow = e;
         },
         dataFormSubmit() { //提交订单
            this.fyData.forEach(e => {
               e.shippingDate = this.info.shippingDate
               if (e.planId && !e.numPlan) {
                  e.numPlan = -1; //删除设置为空的计划
               }
               let orderId = e.id;
               e.id = e.planId;
               e.orderId = orderId;
            })
            this.$reqPost('addObj', this.fyData).then(res => {
               this.$u.toast('添加成功')
               this.fyList()
            })
         },
         getOrderCarNum() { //修改
            this.$reqPost('setCarNums',this.editRow).then(res => {
               this.$u.toast('修改成功')
               this.xscarshippingdayplan()
            })
         },
         groupChange(n) {
            console.log(n, 'n================')
            this.isTomJihua = n
            if (n == '已设置的计划') {
               this.xscarshippingdayplan()
            } else {
               this.fyList()
            }
         },
         todayDate() {
            let yes = new Date().getTime()
            let date = new Date(yes)
            let y = date.getFullYear()
            let m = date.getMonth() + 1
            m = m < 10 ? ('0' + m) : m
            let d = date.getDate()
            d = d < 10 ? ('0' + d) : d
            const time = y + '-' + m + '-' + d
            console.log('todayDate---------', time)
            return time
         },
         tomorrowDate() {
          let yes = new Date().getTime() + 60 * 24 * 60 * 1000
            let date = new Date(yes)
            let y = date.getFullYear()
            let m = date.getMonth() + 1
            m = m < 10 ? ('0' + m) : m
            let d = date.getDate()
            d = d < 10 ? ('0' + d) : d
            const time = y + '-' + m + '-' + d
            console.log('tomorrowDate---------222', time)
            return time
         },
         fyList() { //列表查询
            uni.showLoading({
               title: '正在加载...'
            });
            let compId = uni.getStorageSync('userInfo').compId
            let params = {
               current: 1,
               size: 100,
               status: 2,
               trainType: 1,
               compId: compId
            }
            this.$reqGet('fyList', params).then(res => {
               if (res.code == 0) {
                  this.xscarshippingdayplan(res.data);
               }
            })
         },
         xscarshippingdayplan(allList) { //已经设置的
          console.log(allList,'allList==========')
            let params = {
               current: 1,
               size: 50,
               shippingDate: this.info.shippingDate
            }
            this.$reqGet('xscarshippingdayplan', params).then(res => {
               if (res.code == 0) {
                  if(!allList) {
                     this.fyData = res.data.records
                     console.log(this.fyData,'this.fyData=========11111111')
                  }else {
                     let l = res.data.records
                     allList.forEach(e => {
                        l.forEach(ee => {
                           if (e.id == ee.orderId) {
                              e.numPlan = ee.numPlan;
                              e.numReal = ee.numReal;
                              e.planId = ee.id;
                              if (ee.carNums != null) {
                                 e.carNums = ee.carNums;
                              }
                           }
                        })
                     })
                     this.fyData = allList;
                     console.log(this.fyData,'this.fyData=========22222222')
                  }
                  console.log(this.fyData,'this.fyData=========333333333')
                  uni.hideLoading();
               }
            }).catch(e => {
               uni.hideLoading();
            })
         },
         tabClick(item) { //切换今日和明日
            console.log(item, 'item==========')
            if (item.index == 1) {
               this.info.shippingDate = this.tomorrowDate()
               if (this.isTomJihua == '已设置的计划') {
                  this.xscarshippingdayplan()
               } else {
                  this.fyList()
               }
            } else {
               this.info.shippingDate = this.todayDate()
               if (this.isTomJihua == '已设置的计划') {
                  this.xscarshippingdayplan()
               } else {
                  this.fyList()
               }
            }
         },
         inputChange(val) {
               console.log(val)
         },
         inputTotalChange(val) {
            console.log(val,'val2=======val2')
            this.editRow = val
         }
      }
   }
</script>
<style lang="scss" scoped>
   ::v-deep {
      .u-tabs__wrapper__nav {
         padding-left: vww(75.5)
      }
      .u-radio__text {
         span {
            font-size: vww(14);
         }
      }
      .u-radio-group--row {
         height: 100%;
         width: 100%;
         display: flex;
         justify-content: right;
      }
      .u-radio__icon-wrap {
         width: vww(14) !important;
         height: vww(14) !important;
         ;
      }
   }
   .qiehuan-box {
      position: sticky;
      top: 0;
      left: 0;
      right: 0;
      width: 100%;
      z-index: 1;
      background-color: #fff;
   }
   .jihua-wrap {
      width: 100%;
      height: 100%;
      overflow-y: auto;
      display: flex;
      flex-direction: column;
      .xiugai-btn {
         position: absolute;
         left: 50%;
         bottom: vww(20);
         width: vww(200);
         transform: translateX(-50%);
         border-radius: vww(20);
      }
   }
   .jihua-main {
      display: flex;
      flex-direction: column;
      width: 100%;
      padding: vww(0) vww(10) vww(70) vww(10);
      box-sizing: border-box;
      .main-inside {
         width: 100%;
         height: calc(100% - vww(44));
      }
      .shaixuan-box {
         height: vww(40);
         position: sticky;
         top: vww(44);
         left: 0;
         right: 0;
         width: 100%;
         z-index: 1;
         background-color: #fff;
      }
      .main-block-box {
         box-shadow: 0px 0px 8px 0px rgba(216,218,238,0.80);
         height: vww(120);
         padding: vww(10);
         box-sizing: border-box;
         margin-top: vww(12);
         border-radius: vww(8);
            &:first-child{
            margin-top: vww(5);
         }
         .jihua-main-line {
            width: 100%;
            display: flex;
            view {
               font-size: vww(14);
               line-height: 2;
            }
            .name {
               font-weight: 600 !important;
            }
            .main-flex {
               width: 100%;
               display: flex;
               justify-content: space-between;
                    view{
                  font-size: vww(14);
                  line-height: vww(34);
               }
               .carNum-box {
                  display: flex;
                        view {
                           font-size: vww(14);
                           line-height: vww(34);
                        }
                  .u-input {
                     height: vww(20);
                     width: vww(100);
                  }
               }
            }
         }
      }
   }
</style>
<template>
   <view class="jihua-wrap">
      <u-overlay :show="overlayShow" @click="overlayShow = false"></u-overlay>
      <view class="qiehuan-box"><u-tabs :list="tabList" @click="tabClick"></u-tabs></view>
      <view class="jihua-main">
         <view class="shaixuan-box">
            <u-radio-group v-model="radioValue" @change="groupChange">
               <u-radio style="margin-right: 30rpx;" shape="square" label="全部" name="全部"></u-radio>
               <u-radio style="margin-right: 30rpx;" shape="square" label="已设置的计划" name="已设置的计划"></u-radio>
               <!-- <u-radio shape="square" label="未设置的计划" name="未设置的计划"></u-radio> -->
            </u-radio-group>
         </view>
         <view class="main-inside">
            <view v-if="isTomJihua == '全部'" class="totalListContainer">
               <u-empty v-if="fyData.length == 0" mode="data" icon="http://cdn.uviewui.com/uview/empty/data.png" class="empty-container"></u-empty>
               <view id="u-dropdown" class="main-block-box" v-for="(item, index) in fyData" :key="item.orderId" ref="planViewRef">
                  <view class="jihua-main-line">
                     <view class="name">客户名称:{{item.customerName || ''}}</view>
                  </view>
                  <view class="jihua-main-line">
                     <view class="main-flex">
                        <view>煤种:{{ item.order.coalName || '' }}</view>
                        <view style="margin-right:10px">剩余量:{{ item.order.executiveSurplus || '' }} 吨</view>
                     </view>
                  </view>
                  <view class="jihua-main-line">
                     <view class="main-flex">
                        <view class="carNum-box">
                           <view>计划车数:</view>
                            <u--input
                       placeholder="请输入发运车数"
                       border="surround"
                       v-model="item.numPlan"
                       @change="inputChange(item)"
                       @focus="faYunPlanCarsFocus(item)"
                       type="number" pattern="[0-9]*"></u--input>
                  <!--                           <view class="planCars" :style="{color:item.numPlan  ? '#111':'#ccc'}" @click="faYunPlanCarsFocus(item)">
                                      <text v-model="item.numPlan">{{ item.numPlan || '点击输入数量' }}</text>
                  &lt;!&ndash;                    <text v-model="item.numPlan">{{ item.numPlan || '点击输入数量' }}</text>&ndash;&gt;
                                      <view class="cursor" v-if="isCursor && fayunPlanFocusId == item.orderId"><image src="@/static/cursor.gif" mode=""><image></view>
                                    </view>-->
                        </view>
                        <view style="margin-right:10px">实际发车数:{{ item.numReal || '暂无' }}</view>
                     </view>
                  </view>
                  <u-keyboard
                     @change="valChange"
                     @backspace="backspace"
                     @confirm="keyBoardConfirm"
                     @cancel="keyBoardCancel"
                     @close="keyBoardClose"
                     :show="keyBoardShow"
                     ref="uKeyboard"
                     mode="number"
                     :overlay="false"
                     :closeOnClickOverlay="false"
                     :dotDisabled="true"
                     zIndex="100000"
                  ></u-keyboard>
               </view>
               <u-button class="xiugai-btn" type="primary" text="提交" @click="submit"></u-button>
            </view>
            <view v-if="isTomJihua == '已设置的计划'">
               <u-empty v-if="fyData.length == 0" mode="data" icon="http://cdn.uviewui.com/uview/empty/data.png" class="empty-container"></u-empty>
               <view class="main-block-box" v-for="(item, index) in fyData" :key="item.orderId">
                  <view class="jihua-main-line">
                     <view class="name">客户名称:{{ item.customerName || '' }}</view>
                  </view>
                  <view class="jihua-main-line">
                     <view class="main-flex">
                        <view>煤种:{{ item.order.coalName || '' }}</view>
                        <view style="margin-right:10px">剩余量:{{ item.order.executiveSurplus || '' }} 吨</view>
                     </view>
                  </view>
                  <view class="jihua-main-line">
                     <view class="main-flex">
                        <view class="carNum-box">
                           <view>计划车数:</view>
                            <u--input
                       placeholder="请输入发运车数"
                       border="surround"
                       v-model="item.numPlan"
                       @change="inputTotalChange(item)"
                       @focus="faYunPlanCarsFocus(item)"
                       type="number" pattern="[0-9]*"></u--input>
<!--                           <view class="planCars" :style="{color:item.numPlan  ? '#111':'#ccc'}" @click="faYunPlanCarsFocus(item)">
                              <text v-model="item.numPlan">{{ item.numPlan || '点击输入数量' }}</text>
                              <view class="cursor" v-if="isCursor && fayunPlanFocusId == item.orderId">
                                 <image src="@/static/cursor.gif" mode="" />
                              </view>
                           </view>-->
                        </view>
                        <view style="margin-right:10px">实际发车数:{{ item.numReal == null ? '暂无' : item.numReal }}</view>
                     </view>
                  </view>
<!--                  <u-keyboard
                     @change="valChange"
                     @backspace="backspace"
                     @confirm="keyBoardConfirm"
                     @cancel="keyBoardCancel"
                     @close="keyBoardClose"
                     :show="keyBoardShow"
                     ref="uKeyboard"
                     mode="number"
                     :overlay="false"
                     :closeOnClickOverlay="false"
                     :dotDisabled="true"
                     zIndex="100000"
                  ></u-keyboard>-->
               </view>
            </view>
         </view>
      </view>
      <!-- 修改弹出框 -->
      <u-popup :show="editPopupShow" @close="editPopupClose" @open="editPopupOpen" mode="top" round="10">
         <view class="editPopup">
            <view class="editPopup__title"><text>计划车数</text></view>
            <view class="editPopup__input"><u--input v-model="keyBoardValue" placeholder="请输入内容" type="number" border="surround"></u--input></view>
            <!-- <view class="editPopup__btn"><u-button text="确定" type="primary" @click="popupDetermineClick"></u-button></view> -->
         </view>
      </u-popup>
      <view class="back-top-container"><u-back-top :scroll-top="scrollTop" icon="arrow-up" mode="square"></u-back-top></view>
      <!-- 菜单栏 -->
      <popup-menu @menuShow="menushow" ref="menuRef"></popup-menu>
   </view>
</template>
<script>
import popupMenu from '@/components/common/popup-menu/popup-menu.vue';
import tool from '@/utils/tool.js';
import { TrackOpTypes } from "vue";
import row from "../../uni_modules/uview-ui/libs/config/props/row";
export default {
   components: {
      popupMenu
   },
   data() {
      return {
         radioValue: '全部',
         tabList: [
            {
               name: '今日发运计划'
            },
            {
               name: '明日发运计划'
            }
         ],
         carValue: 0,
         fyData: [],
         fyData2: [],
         info: {
            shippingDate: this.todayDate()
         },
         isTomJihua: '全部',
         editPopupShow:false,// 修改弹出框
         editRow: '', //修改行的行
         menuShow: false,
         scrollTop: 0, // 返回顶部按钮绑定,
         // 键盘
         keyBoardShow: false,
         keyBoardValue: '',
         fayunPlanFocusId: null,
         isCursor: false ,// 日计划车辆输入框焦点动画
         overlayShow:false // 遮罩层
      };
   },
   onShow() {
      if (this.menuShow == true) {
         this.$refs.menuRef.menuClick();
      }
      this.init();
   },
   onPageScroll(e) {
      // 传入scrollTop值并触发所有easy-loadimage组件下的滚动监听事件
      this.scrollTop = e.scrollTop;
      // console.log('屏幕滚动监听事件',this.scrollTop);
   },
   // 点击导航栏菜单后
   onNavigationBarButtonTap(e) {
      this.$refs.menuRef.menuClick();
   },
   mounted() {
      // setInterval(() => {
      //    uni.hideKeyboard();
      // }, 1);
   },
   watch: {
      isTomJihua: {
         handler: function(newV, oldV) {
            if (newV != oldV) {
               this.keyBoardShow = false;
            }
         },
         deep: true,
         immediate: true
      },
      keyBoardValue: {
         handler: function(newV, oldV) {
            this.fyData.map(item => {
               if ( this.isTomJihua == '全部'&&item.orderId == this.fayunPlanFocusId) {
                  if (item.numPlan && item.numPlan != newV) {
                     item.numPlan = this.keyBoardValue;
                  }
               }
            });
         },
         deep: true,
         immediate: true
      }
      // scrollTop: {
      //    handler: function(newV, oldV) {
      //          if (newV != oldV) {
      //             this.keyBoardClose();
      //             // this.keyBoardShow = false;
      //          }
      //    },
      //    deep: true,
      //    immediate: true
      // }
   },
   methods: {
      init() {
         this.fyList();
      },
      menushow(e) {
         this.menuShow = e;
      },
      // 全部计划列表
      fyList() {
         this.overlayShow = true;
         //列表查询
         uni.showLoading({
            title: '正在加载...'
         });
         let compId = uni.getStorageSync('userInfo').compId;
         let params = {
            current: 1,
            size: 900,
            status: 2,
            trainType: 1,
            compId: compId,
            endDate: this.info.shippingDate
         };
         this.$reqGet('fyList', params).then(res => {
            if (res.code == 0) {
               this.fyData = res.data;
               uni.hideLoading();
               this.overlayShow = false;
            }
         });
      },
      // 已设置计划列表
      xscarshippingdayplan() {
         this.overlayShow = true;
         //已经设置的
         let params = {
            current: 1,
            size: 50,
            shippingDate: this.info.shippingDate
         };
         uni.showLoading({
            title: '正在加载...'
         });
         this.$reqGet('xscarshippingdayplan', params)
            .then(res => {
               if (res.code == 0) {
                  this.fyData = res.data.records;
                  uni.hideLoading();
                  this.overlayShow = false;
               }
            })
            .catch(e => {
               uni.hideLoading();
               this.overlayShow = false;
            });
      },
      //提交
      dataFormSubmit() {
         this.overlayShow = true;
         uni.showLoading({
            title:'加载中...'
         })
         this.fyData.forEach(e => {
            if(!e.shippingDate && e.numPlan){
               e.shippingDate = this.info.shippingDate
            }
         });
         this.$reqPost('xscarshippingdayplanAddObj', this.fyData).then(res => {
            uni.hideLoading();
            if(res.code == 0){
               this.fyList();
          setTimeout(()=>{
            uni.showToast({
              title:'更新成功!',
              icon:'none',
              duration:1000
            })
          },0)
            }
         });
      },
      // 全部日计划提交按钮防抖
      submit:tool.throttle(function(){
            this.dataFormSubmit();
      }),
      // 修改日计划按钮
      getOrderCarNum() {
         this.overlayShow = true;
         uni.showLoading({
            title:'加载中...'
         })
         //修改
          this.$reqPost('setCarNums', this.editRow).then(res => {
            uni.hideLoading();
            if(res.code == 0){
               // 设置setTimeout是避免uni.showToast被uni.showLoading覆盖掉
               setTimeout(()=>{
                  uni.showToast({
                     title:'修改成功',
                     icon:'none',
                     duration:1000,
                     position:'bottom'
                  })
               },0)
            }else{
               setTimeout(()=>{
                  uni.showToast({
                     title:'修改失败',
                     icon:'none',
                     duration:1000
                  })
               },0)
            }
            this.overlayShow = false;
            this.xscarshippingdayplan();
         });
      },
      // 修改弹出框
      editPopupClose(){
         console.log('修改弹出框Close');
         this.editPopupShow = false;
         this.keyBoardShow = false;
      },
      editPopupOpen(){
         console.log('修改弹出框Open');
      },
      // 切换全部和已设置
      groupChange(n) {
         this.initVariable();
         this.isTomJihua = n;
         if (n == '已设置的计划') {
            this.xscarshippingdayplan();
         } else {
            this.fyList();
         }
      },
      //切换今日和明日
      tabClick(item) {
         this.initVariable();
         if (item.index == 1) {
            this.info.shippingDate = this.tomorrowDate();
            if (this.isTomJihua == '已设置的计划') {
               this.xscarshippingdayplan();
            } else {
               this.fyList();
            }
         } else {
            this.info.shippingDate = this.todayDate();
            if (this.isTomJihua == '已设置的计划') {
               this.xscarshippingdayplan();
            } else {
               this.fyList();
            }
         }
      },
      // 初始化变量
      initVariable(){
         this.keyBoardShow = false;
         this.keyBoardValue = null;
         this.fayunPlanFocusId = null;
         uni.pageScrollTo({
            scrollTop: 0,
            duration: 300
         });
      },
      inputChange(item) {
      if(item.numPlan) {
        let total = Math.floor(item.order.executiveSurplus / Number(34));
        let max = total + (item.numReal ? item.numReal : 0) + 1
        if(item.numPlan > max) {
          this.$nextTick(() => {
            item.numPlan = max
            this.$set(item,'numPlan',max)
          })
          uni.showToast({
            title:`该订单最大设置车数为:${max}`,
            icon:'none',
            duration:1000
          })
        }
      }
      },
    changeIn(val) {
      console.log(val,'val=====')
    },
      inputTotalChange(val) {
         console.log(val, 'val2=======val2,已设置计划');
         this.editRow = val;
      },
      // input获取焦点
      faYunPlanCarsFocus(item) {
      console.log(item,'发运车数计划------------===========')
         this.fayunPlanFocusId = item.orderId;
         this.keyBoardValue = item.numPlan + '';
         if(this.isTomJihua == '已设置的计划'){
            this.editPopupShow = true;
         } else{
            this.isCursor = true;
         }
         // 根据列表下标,使屏幕滚动到相应可视位置
         // for(let i = 0;i<this.fyData.length;i++){
         //    if(this.fyData[i].orderId == item.orderId){
         //       uni.pageScrollTo({
         //          scrollTop: i*144,
         //          duration: 300
         //       });
         //    }
         // }
      },
      // 键盘
      valChange(val) {
         // this.keyBoardValue += val;
         // 将每次按键的值拼接到value变量中,注意+=写法
         this.fyData.map(item => {
            if (item.orderId == this.fayunPlanFocusId) {
               if (item.numPlan) {
                  if(this.isTomJihua == '全部'){
                     item.numPlan = this.keyBoardValue += val + '';
                     this.keyBoardValue = item.numPlan;
                  }else{
                     this.keyBoardValue = this.keyBoardValue += val + '';
                  }
               } else {
                  item.numPlan = val;
                  this.keyBoardValue = item.numPlan;
               }
            }
         });
      },
      backspace() {
         this.keyBoardValue = this.keyBoardValue.substr(0, this.keyBoardValue.length - 1);
      },
      // 键盘点击确定
      keyBoardConfirm() {
         if(this.isTomJihua == '已设置的计划'){
            this.fyData.map(item => {
               if (item.orderId == this.fayunPlanFocusId) {
                  item.numPlan = this.keyBoardValue;
                  this.editRow = item;
               }
            });
            this.getOrderCarNum();
         }
         this.keyBoardClose();
      },
      keyBoardCancel() {
         this.keyBoardClose();
      },
      // 键盘关闭了
      keyBoardClose() {
         this.fayunPlanFocusId = null;
         this.keyBoardShow = false;
         this.isCursor = false;
         this.editPopupShow = false;
      },
      todayDate() {
         let yes = new Date().getTime();
         let date = new Date(yes);
         let y = date.getFullYear();
         let m = date.getMonth() + 1;
         m = m < 10 ? '0' + m : m;
         let d = date.getDate();
         d = d < 10 ? '0' + d : d;
         const time = y + '-' + m + '-' + d;
         return time;
      },
      tomorrowDate() {
         let yes = new Date().getTime() + 60 * 24 * 60 * 1000;
         let date = new Date(yes);
         let y = date.getFullYear();
         let m = date.getMonth() + 1;
         m = m < 10 ? '0' + m : m;
         let d = date.getDate();
         d = d < 10 ? '0' + d : d;
         const time = y + '-' + m + '-' + d;
         return time;
      }
   }
};
</script>
<style>
input{-webkit-appearance: none;}
</style>
<style lang="scss" scoped>
.ceshi-box{
  width: 100%;
  display: flex;
  flex-direction: column;
}
::v-deep {
   .u-tabs__wrapper__nav {
      padding-left: vww(75.5);
   }
   .u-radio__text {
      span {
         font-size: vww(14);
      }
   }
   .u-radio {
      margin-right: vww(10);
   }
   .u-radio__text {
      font-size: vww(14) !important;
   }
   .u-input {
      height: vww(16);
      width: vww(100);
      z-index: 1;
   }
   .u-radio-group--row {
      height: 100%;
      width: 100%;
      display: flex;
      justify-content: right;
   }
   .u-radio__icon-wrap {
      width: vww(18) !important;
      height: vww(18) !important;
   }
   .u-icon__icon {
      font-size: vww(12) !important;
      line-height: vww(12) !important;
   }
   .u-empty {
      width: 100%;
      height: vww(300);
   }
}
::v-deep.totalListContainer{
   .u-button {
      position: fixed !important;
      left: 50%;
      bottom: vww(20);
      width: vww(200) !important;
      transform: translateX(-50%);
      border-radius: vww(20);
      z-index: 9999;
   }
}
.qiehuan-box {
   position: fixed;
   top: 0;
   left: 0;
   right: 0;
   width: 100%;
   height: vww(44);
   z-index: 10;
   background-color: #fff;
}
::v-deep.jihua-wrap {
   width: 100%;
   height: 100%;
   // overflow-y: auto; // 会引起键盘弹出页面布局
   display: flex;
   flex-direction: column;
   // .xiugai-btn {
   //    position: absolute;
   //    left: 50%;
   //    bottom: vww(20);
   //    width: vww(200);
   //    transform: translateX(-50%);
   //    border-radius: vww(20);
   // }
}
.jihua-main {
   display: flex;
   flex-direction: column;
   width: 100%;
   padding: vww(44) vww(10) vww(270) vww(10);
   box-sizing: border-box;
   .main-inside {
      width: 100%;
      height: calc(100% - vww(44));
   }
   .shaixuan-box {
      height: vww(40);
      position: sticky;
      top: vww(44);
      left: 0;
      right: 0;
      width: 100%;
      z-index: 10;
      background-color: #fff;
   }
   .main-block-box {
      box-shadow: 0px 0px 8px 0px rgba(216, 218, 238, 0.8);
      //height: vww(120);
      padding: vww(10);
      box-sizing: border-box;
      margin-top: vww(12);
      border-radius: vww(8);
      &:first-child {
         margin-top: vww(5);
      }
      .jihua-main-line {
         width: 100%;
         display: flex;
         view {
            font-size: vww(14);
         }
         .name {
            font-weight: 600 !important;
         }
         .main-flex {
            width: 100%;
            display: flex;
            justify-content: space-between;
            view {
               font-size: vww(14);
               line-height: vww(32);
            }
            .carNum-box {
               display: flex;
               .planCars {
                  display: flex;
                  box-sizing: border-box;
                  overflow: auto;
                  width: vww(120);
                  border: 1px solid #dddddd;
                  border-radius: vww(4);
                  padding: vww(1) vww(10);
                  // 输入焦点图片
                  .cursor {
                     // float: left;
                     width: vww(1);
                     height: vww(15);
                     vertical-align: middle;
                     align-self: center;
                     image {
                        width: vww(1);
                        display: block;
                        height: vww(15);
                     }
                  }
               }
               view {
                  font-size: vww(14);
                  line-height: vww(32);
               }
            }
         }
      }
   }
}
// 修改计划车辆弹出框
::v-deep.editPopup {
      height: vww(110);
      &__title {
         margin-top: vww(10);
         text-align: center;
      }
      &__input {
         margin: vww(10) auto 0;
         .u-input {
            width:80%;
            margin:0 auto!important;
            border: 1px solid #dddddd;
         }
      }
      // &__btn {
      //    margin: vww(80) auto;
      //    width: 50%;
      //    .u-button {
      //       height: vww(40);
      //    }
      // }
   }
</style>