loulijun2021
2022-10-17 329de8a777dbc880bc495559fc3aae51963663fb
1.安灯设置静态页面实现部分
已修改6个文件
已删除1个文件
3302 ■■■■ 文件已修改
package.json 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/jcsz.js 67 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/DatePicker/index.vue 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/jcsz/adsz.vue 326 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/sbgl/wxjl.vue 86 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/scgl/cngh.vue 194 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/scgl/gd_back.vue 2579 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
package.json
@@ -18,7 +18,7 @@
    "core-js": "3.6.5",
    "dayjs": "^1.11.5",
    "echarts": "^5.3.2",
    "element-ui": "2.13.2",
    "element-ui": "^2.15.6",
    "jquery": "^3.6.0",
    "js-cookie": "2.2.0",
    "lib-flexible": "^0.3.2",
src/api/jcsz.js
@@ -230,3 +230,70 @@
    params: data
  })
}
// å®‰ç¯ç³»ç»Ÿ/自定义安灯呼叫类型查询
export function AnDengTypeSearch() {
  return request({
    url: 'BasicSetting/AnDengTypeSearch',
    method: 'get'
  })
}
// å®‰ç¯ç³»ç»Ÿ/自定义安灯呼叫类型新增
export function AddUpdateAnDengType(data) {
  return request({
    url: 'BasicSetting/AddUpdateAnDengType',
    method: 'post',
    data
  })
}
// å®‰ç¯ç³»ç»Ÿ/自定义安灯呼叫类型删除
export function DeleteAnDengType(data) {
  return request({
    url: 'BasicSetting/DeleteAnDengType',
    method: 'post',
    params: data
  })
}
// å®‰ç¯ç³»ç»Ÿ/查询绑定的响应人员
export function AnDengResponUserSearch(data) {
  return request({
    url: 'BasicSetting/AnDengResponUserSearch',
    method: 'get',
    params: data
  })
}
// å®‰ç¯ç³»ç»Ÿ/新增响应人员查询已绑定的响应人员
export function AnDengDigoResponUserSearch(data) {
  return request({
    url: 'BasicSetting/AnDengDigoResponUserSearch',
    method: 'get',
    params: data
  })
}
// å®‰ç¯ç³»ç»Ÿ/新增响应人员提交
export function AnDengDigoResponUserSeave(wkshopcode, calltypecode, enable, data) {
  return request({
    url: 'BasicSetting/AnDengDigoResponUserSeave?wkshopcode=' + wkshopcode + '&calltypecode=' + calltypecode + '&enable=' + enable,
    method: 'post',
    data
  })
}
// å®‰ç¯ç³»ç»Ÿ/响应人员允许关闭
export function AnDengResponUserCloseSeave(data) {
  return request({
    url: 'BasicSetting/AnDengResponUserCloseSeave',
    method: 'post',
    params: data
  })
}
// å®‰ç¯ç³»ç»Ÿ/响应人员删除
export function AnDengResponUserDeleteSeave(data) {
  return request({
    url: 'BasicSetting/AnDengResponUserDeleteSeave',
    method: 'post',
    params: data
  })
}
src/components/DatePicker/index.vue
@@ -361,15 +361,57 @@
    dblChooseDate(date) {
      if (!this.isPastDue(date)) {
        clearTimeout(time)
        time = setTimeout(() => {
          this.time = funsdates.getYearMonthDay(date)
          if (typeof this.value === 'string') {
            this.value = this.value.split(',')
          }
          // å¯ä»¥ç‚¹å‡»çš„æ—¥æœŸ
          if (!this.isPastDue(date)) {
            if ((this.value.indexOf(this.handleDatetime(date)) < 0 && this.value !== '') || this.value === '') { // æ•°ç»„添加
              this.value.push(this.handleDatetime(date)) // æ–°å¢žåˆ°input里
              const data = {
                name: this.handleDatetime(date),
                key: this.rowData.CaptPlanWorkShiftCode
              }
              this.defArr.push(data) // æ–°å¢žåˆ° é»˜è®¤æ•°ç»„里
        this.dblDate = date
        this.isDbl = true
              this.isDbl = true // å³ä¾§å±•å¼€
        this.changeTime = this.handleDatetime(date)
        this.getCapacityPlanningOnclickSelect({
              const DATA = {
          CaptPlanWorkShiftCode: this.defArr.find(item => item.name === this.changeTime).key,
          captplanid: this.rowData.CaptPlanId,
          datetime: this.handleDatetime(date)
        })
              }
              this.getCapacityPlanningOnclickSelect(DATA)
        this.getDblTime()
            } else if (this.value.indexOf(this.handleDatetime(date)) >= 0) {
              this.dblDate = date
              this.isDbl = true // å³ä¾§å±•å¼€
              this.changeTime = this.handleDatetime(date)
              const DATA = {
                CaptPlanWorkShiftCode: this.defArr.find(item => item.name === this.changeTime).key,
                captplanid: this.rowData.CaptPlanId,
                datetime: this.handleDatetime(date)
              }
              this.getCapacityPlanningOnclickSelect(DATA)
              this.getDblTime()
            //   const indexV = this.value.indexOf(this.handleDatetime(date))
            //   this.value.splice(indexV, 1)
            //   for (const i in this.defArr) {
            //     if (this.defArr[i].name === this.handleDatetime(date)) {
            //       this.defArr.splice(i, 1)
            //     }
            //   }
            }
          }
          this.$emit('input', this.value)
        }, 300)
      }
    },
    isDblDate(date) {
src/views/jcsz/adsz.vue
@@ -1,11 +1,331 @@
<template />
<template>
  <div>
    <div class="body" :style="{height:mainHeight+'px'}">
      <div class="body_left">
        <div style="margin:10px 0">
          <i class="el-icon-s-comment" style="color:#42b983;" /> è½¦é—´ä¿¡æ¯ï¼š
        </div>
        <el-input
          v-model="filterText"
          placeholder="输入关键字进行过滤"
          style="margin-bottom: 20px"
        />
        <el-tree
          ref="tree"
          class="filter-tree"
          :data="shopTree"
          :props="defaultProps"
          highlight-current
          default-expand-all
          :style="{height: contentHeight+'px',overflowY:'auto'}"
          :filter-node-method="filterNode"
        />
      </div>
      <div class="body_right">
        <el-tabs type="border-card">
          <el-tab-pane label="用户管理">
            <div :style="{height: (contentHeight+51)+'px'}">
              <div class="pane_top">
                <div style="display: flex;align-items: center">
                  <div class="bar" />
                  <div>响应人员</div>
                  <el-button
                    icon="el-icon-circle-plus-outline"
                    style="height: 30px;line-height: 30px;color: #42b983;font-size: 22px;padding:   10px"
                  />
                </div>
                <div>
                  <el-checkbox v-model="allowClose">允许关闭</el-checkbox>
                </div>
              </div>
              <el-empty v-if="tags.length===0" :image-size="200" description="暂无数据" />
              <div v-else class="pane_content" :style="{maxHeight:contentHeight+'px',overflowY: 'scroll'}">
                <el-tag
                  v-for="tag in tags"
                  :key="tag.name"
                  closable
                  type="success"
                  style="margin-right: 10px;margin-bottom: 10px"
                  @close="val=>tagClose(val,tag)"
                >
                  {{ tag.name }}
                </el-tag>
              </div>
            </div>
          </el-tab-pane>
          <el-tab-pane label="配置管理">
            <div :style="{height: (contentHeight+51)+'px'}">
              é…ç½®ç®¡ç†
            </div>
          </el-tab-pane>
          <el-tab-pane label="角色管理">
            <div :style="{height: (contentHeight+51)+'px'}">
              è§’色管理
            </div>
          </el-tab-pane>
          <el-tab-pane label="定时任务补偿">
            <div :style="{height: (contentHeight+51)+'px'}">
              å®šæ—¶ä»»åŠ¡è¡¥å¿
            </div>
          </el-tab-pane>
        </el-tabs>
        <el-button
          style="position: absolute;top: 15px;right:10px;z-index: 1000"
          icon="el-icon-setting"
          @click="setting"
        >自定义呼叫类型
        </el-button>
      </div>
    </div>
  </div>
</template>
<script>
import { ShopSearch } from '@/api/dzkb'
import { AnDengTypeSearch } from '@/api/jcsz'
export default {
  name: 'Adsz'
  name: 'Zzjg',
  data() {
    return {
      mainHeight: 0,
      contentHeight: 0,
      filterText: '',
      shopTree: [], // æ ‘形车间
      defaultProps: {
        children: 'children',
        label: 'org_name'
      },
      allowClose: true, // å…è®¸å…³é—­
      tags: [
        { name: '标签一' },
        { name: '标签二' },
        { name: '标签三' },
        { name: '标签四' }
      ]
    }
  },
  watch: {
    filterText(val) {
      this.$refs.tree.filter(val)
    }
  },
  created() {
    this.handleRequest()
  },
  mounted() {
    window.addEventListener('resize', this.getHeight)
    this.getHeight()
  },
  methods: {
    handleRequest() {
      this.getShopSearch().then(res => {
        if (res.code === '200') {
          this.getAnDengTypeSearch()
        }
      })
    },
    async getShopSearch() {
      const { data: res } = await ShopSearch()
      this.shopTree = res
    },
    async getAnDengTypeSearch() {
      // const { data: res } = await AnDengTypeSearch()
    },
    // è¿‡æ»¤èŠ‚ç‚¹
    filterNode(value, data) {
      if (!value) return true
      return data.label.indexOf(value) !== -1
    },
    // è‡ªå®šä¹‰å‘¼å«ç±»åž‹
    setting() {
    },
    // tag关闭事件
    tagClose(val, tag) {
      console.log(val, tag)
    },
    // èŽ·å–é¡µé¢é«˜åº¦
    getHeight() {
      this.$nextTick(() => {
        this.mainHeight = window.innerHeight - 85
        this.contentHeight = this.mainHeight - 142
      })
    }
  }
}
</script>
<style scoped>
<!--本页面单独样式-->
<style lang="scss" scoped>
$main_color: #42b983;
.body {
  display: flex;
  flex-direction: row;
}
.body_left {
  width: 360px;
  background-color: #fff;
  margin: 10px 0;
  padding: 10px;
  flex-direction: column;
}
.body_right {
  width: 100%;
  background-color: #fff;
  margin: 10px 0 10px 10px;
}
.pane_top{
  background-color: #fafafa;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 10px;
  margin-bottom: 20px;
  .bar{
    width: 4px;
    height: 20px;
    border-radius: 2px;
    background-color: $main_color;
    margin-right: 10px;
  }
}
.pane_content{
  background-color: #fafafa;
  padding: 10px;
  min-height: 400px;
}
::v-deep .is-current>.el-tree-node__content{
  background-color: $main_color;
 font-weight: bolder;
}
</style>
<!--公共页面样式-->
<style lang="scss" scoped>
$main_color: #42b983;
::v-deep .el-button--text {
  font-size: 14px;
  cursor: pointer;
}
.el-icon-share, .el-icon-delete, .el-icon-edit-outline {
  color: $main_color;
  cursor: pointer;
}
.el-icon-edit-outline {
  margin-right: 15px;
}
::v-deep .el-button--primary, .el-button--default, .el-button--info {
  height: 34px;
  display: flex;
  align-items: center;
  padding: 0 15px;
}
::v-deep .el-button--default {
  background-color: #f8f8fa;
  border: none;
}
::v-deep .el-input__inner {
  height: 34px;
  line-height: 34px;
}
::v-deep .el-dialog__body {
  padding: 20px 100px !important;
}
::v-deep .dialogVisibleRoles .el-dialog__body {
  padding: 20px 20px !important;
}
::v-deep .importPickerClass .el-dialog__body {
  padding: 20px 20px !important;
}
::v-deep .el-dialog__footer {
  display: flex;
  justify-content: flex-end;
}
::v-deep .el-table .caret-wrapper {
  transform: scale(0.8);
}
::v-deep .cell {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
::v-deep .el-table::before {
  height: 0;
}
::v-deep .el-table__body-wrapper {
  background-color: #f8f8fa;
}
::v-deep .el-table__body .el-table__row.hover-row td {
  background-color: #eaecef;
}
::v-deep .el-form--inline .el-form-item__label {
  color: #a7a7a7;
}
.body ::v-deep .el-divider {
  border: 1px solid #eee;
  width: 99%;
  margin: 10px auto;
}
.body ::v-deep .el-form-item {
  margin-bottom: 0;
}
.userDialogVisible ::v-deep .el-form-item {
  margin-bottom: 0;
}
::v-deep .el-select__caret {
  display: flex;
  align-items: center;
  justify-content: center;
}
.tableFixed {
  ::v-deep .el-table__fixed-right {
    height: 100% !important;
  }
  ::v-deep .el-table__fixed {
    height: 100% !important;
  }
}
</style>
<style>
.el-table .custom-row {
  background: #f8f8fa;
}
</style>
src/views/sbgl/wxjl.vue
@@ -267,7 +267,7 @@
                style="width: 100px;margin-right: 10px"
                :src="baseUrl+item.img1url"
                alt=""
                @click="handlePictureCardPreview(baseUrl+item.img1url)"
                @click="handlePictureCardPreview(baseUrl+item.img1url,'设备报修/故障图片')"
              >
            </div>
          </div>
@@ -283,7 +283,7 @@
                style="width: 100px;margin-right: 10px"
                :src="baseUrl+item.img1url"
                alt=""
                @click="handlePictureCardPreview(baseUrl+item.img1url)"
                @click="handlePictureCardPreview(baseUrl+item.img1url,'设备维修/故障图片')"
              >
            </div>
          </div>
@@ -296,7 +296,7 @@
                style="width: 100px;margin-right: 10px"
                :src="baseUrl+item.img2url"
                alt=""
                @click="handlePictureCardPreview(baseUrl+item.img2url)"
                @click="handlePictureCardPreview(baseUrl+item.img2url,'设备维修/备件图片')"
              >
            </div>
          </div>
@@ -305,7 +305,14 @@
          <i class="el-icon-s-operation" style="color:#42b983;" /> è®¾å¤‡ç»´ä¿®éªŒè¯ä¿¡æ¯ï¼š
        </div>
        <div style="display: flex;flex-direction: column;margin-left: 40px">
          <div style="margin-bottom: 10px">验证结果:{{ isResult }}</div>
          <div style="margin-bottom: 10px;display: flex;">验证结果:
            <div
              :style="{backgroundColor:isResult==='通过'? '#42b983':'red'}"
              style="margin-top: 3px;margin-right: 5px;width:10px;height: 10px;border-radius: 50%;"
            />
            {{ isResult }}
          </div>
        </div>
      </div>
      <!--      å›¾ç‰‡é¢„览对话框-->
@@ -316,7 +323,33 @@
        append-to-body
        @close="pictureHandleClose"
      >
        <img width="100%" :src="pictureUrl" alt="">
        <div style="font-size: 16px;margin-bottom: 10px">
          <i class="el-icon-s-comment" style="color:#42b983;" /> {{ pictureName }}
        </div>
        <img :key="new Date()" width="100%" :src="pictureUrl" alt="">
        <el-tooltip class="item" effect="light" content="上一张" placement="top">
          <div
            v-if="pictureUrlAll.findIndex(item => item.url === pictureUrl)!==0"
            style="position: absolute;top: 48%;left: 3.5%;"
          ><i
            style="color:#fff;cursor: pointer;font-size: 20px"
            class="el-icon-d-arrow-left"
            @click="arrowLeftClick(pictureUrl,pictureName)"
          /></div>
        </el-tooltip>
        <el-tooltip class="item" effect="light" content="下一张" placement="top">
          <div
            v-if="pictureUrlAll.findIndex(item => item.url === pictureUrl)!==pictureUrlAll.length-1"
            style="position: absolute;top: 48%;right: 3.5%;"
          >
            <i
              style="color:#fff;cursor: pointer;font-size: 20px"
              class="el-icon-d-arrow-right"
              @click="arrowRightClick(pictureUrl,pictureName)"
            /></div>
        </el-tooltip>
        <span slot="footer" class="dialog-footer">
          <div class="footerButton">
            <el-button @click="pictureVisible=false">返 å›ž</el-button>
@@ -391,6 +424,8 @@
      pictureVisible: false, // å›¾ç‰‡é¢„览对话框
      pictureUrl: '', // å›¾ç‰‡é¢„览Url
      pictureName: '', // å›¾ç‰‡é¢„览名称
      pictureUrlAll: [], // å›¾ç‰‡é¢„览地址的所有Url
      title_value: '数据导入 / ç‚¹æ£€éƒ¨ä½',
      code: '4',
@@ -506,19 +541,58 @@
      this.dialogData1 = res.data1
      this.dialogData2 = res.data2
      this.isResult = row.verify_result
      // è®¾å¤‡æŠ¥ä¿®å›¾ç‰‡é›†åˆ
      if (this.dialogData1.faultimage) {
        this.dialogData1.faultimage.forEach(item => {
          this.pictureUrlAll.push(
            { url: this.baseUrl + item.img1url, name: '设备报修/故障图片' }
          )
        })
      }
      // è®¾å¤‡ç»´ä¿®å›¾ç‰‡é›†åˆ
      if (this.dialogData2.repairimage) {
        this.dialogData2.repairimage.forEach(item => {
          this.pictureUrlAll.push(
            {
              url: item.img1url ? this.baseUrl + item.img1url : this.baseUrl + item.img2url,
              name: item.img1url ? '设备维修/故障图片' : '设备维修/备件图片'
            }
          )
        })
      }
    },
    handlePictureCardPreview(url) {
    handlePictureCardPreview(url, name) {
      this.pictureVisible = true
      this.pictureUrl = url
      this.pictureName = name
    },
    arrowLeftClick(pictureUrl, pictureName) {
      this.pictureUrlAll.forEach((item, index) => {
        if (item.url === pictureUrl) {
          this.pictureUrl = this.pictureUrlAll[index - 1].url
          this.pictureName = this.pictureUrlAll[index - 1].name
        }
      })
    },
    arrowRightClick(pictureUrl, pictureName) {
      this.pictureUrlAll.forEach((item, index) => {
        if (item.url === pictureUrl) {
          this.pictureUrl = this.pictureUrlAll[index + 1].url
          this.pictureName = this.pictureUrlAll[index + 1].name
        }
      })
    },
    pictureHandleClose() {
      this.pictureUrl = ''
      this.pictureName = ''
    },
    // å¯¹è¯æ¡†å…³é—­äº‹ä»¶
    handleClose() {
      this.dialogData1 = {}
      this.dialogData2 = {}
      this.isResult = ''
      this.pictureUrlAll = []
    },
    async download() {
      let reportdate = this.form.reportdate
src/views/scgl/cngh.vue
@@ -188,7 +188,9 @@
    >
      <el-button v-if="operation==='setting'" type="primary" @click="addRow">新增</el-button>
      <div class="elTableDiv">
        <!--        é€‰æ‹©é»˜è®¤æ–¹æ¡ˆçš„æ—¶å€™æ˜¯è¿™ä¸ªtable-->
        <el-table
          v-if="operation!=='setting'"
          ref="tableDataDialogRef"
          class="tableFixedDialog"
          :data="tableDataDialog"
@@ -200,8 +202,8 @@
          :header-cell-style="this.$headerCellStyle"
          :cell-style="this.$cellStyle"
        >
          <el-table-column
            v-if="operation!=='setting'"
            width="50"
            fixed
          >
@@ -218,7 +220,6 @@
            prop="code"
            label="方案编码"
            width="100"
            fixed
            show-tooltip-when-overflow
          >
            <template slot-scope="{row}">
@@ -384,6 +385,195 @@
            </template>
          </el-table-column>
        </el-table>
        <!--      è®¾ç½®çš„æ—¶å€™æ˜¯è¿™ä¸ªtable-->
        <el-table
          v-else
          ref="tableDataDialogRef"
          class="tableFixedDialog"
          :data="tableDataDialog"
          :style="{width: 100+'%',height:(tableHeight-200)+'px'}"
          border
          :height="(tableHeight-200)+'px'"
          :row-class-name="tableRowClassName"
          highlight-current-row
          :header-cell-style="this.$headerCellStyle"
          :cell-style="this.$cellStyle"
        >
          <el-table-column
            prop="code"
            label="方案编码"
            width="100"
            fixed
            show-tooltip-when-overflow
          >
            <template slot-scope="{row}">
              <div v-if="row.isVisible===0">{{ row.code }}</div>
              <el-input v-else v-model="row.code" placeholder="请输入" type="text" />
            </template>
          </el-table-column>
          <el-table-column
            prop="name"
            label="方案名称"
            width="150"
            fixed
            show-tooltip-when-overflow
          >
            <template slot-scope="{row}">
              <div v-if="row.isVisible===0">{{ row.name }}</div>
              <el-input v-else v-model="row.name" placeholder="请输入" type="text" />
            </template>
          </el-table-column>
          <el-table-column
            prop="duration"
            label="工作时长"
            width="100"
            show-tooltip-when-overflow
          >
            <template slot-scope="{row}">
              <div>{{ row.duration ? parseFloat(row.duration.toFixed(2)) : '0' }} å°æ—¶</div>
            </template>
          </el-table-column>
          <el-table-column
            prop="wktme1_start"
            label="工作时间一"
          >
            <template slot-scope="{row}">
              <div v-if="row.isVisible===0">
                <div v-if="row.wktme1_start">{{ row.wktme1_start }}</div>
                <div v-else>/</div>
              </div>
              <el-time-picker
                v-else
                v-model="row.wktme1_start"
                is-range
                :editable="false"
                :clearable="false"
                range-separator="~"
                start-placeholder="开始"
                end-placeholder="结束"
                format="HH:mm"
                @blur="val=>getTime(val,row,'wktme1_start')"
                @focus="val=>getTime(val,row,'wktme1_start')"
              />
            </template>
          </el-table-column>
          <el-table-column
            prop="wktme2_start"
            label="工作时间二"
          >
            <template slot-scope="{row}">
              <div v-if="row.isVisible===0">
                <div v-if="row.wktme2_start">{{ row.wktme2_start }}</div>
                <div v-else>/</div>
              </div>
              <el-time-picker
                v-else-if="row.isVisible===1"
                v-model="row.wktme2_start"
                is-range
                :disabled="row.wktme1_start.length===0"
                :editable="false"
                :clearable="false"
                range-separator="~"
                start-placeholder="开始"
                end-placeholder="结束"
                format="HH:mm"
                @blur="val=>getTime(val,row,'wktme2_start')"
                @focus="val=>getTime(val,row,'wktme2_start')"
              />
            </template>
          </el-table-column>
          <el-table-column
            prop="wktme3_start"
            label="工作时间三"
          >
            <template slot-scope="{row}">
              <div v-if="row.isVisible===0">
                <div v-if="row.wktme3_start">{{ row.wktme3_start }}</div>
                <div v-else>/</div>
              </div>
              <el-time-picker
                v-else-if="row.isVisible===1"
                v-model="row.wktme3_start"
                is-range
                :disabled="row.wktme2_start.length===0"
                :editable="false"
                :clearable="false"
                format="HH:mm"
                range-separator="~"
                start-placeholder="开始"
                end-placeholder="结束"
                @blur="val=>getTime(val,row,'wktme3_start')"
                @focus="val=>getTime(val,row,'wktme3_start')"
              />
            </template>
          </el-table-column>
          <el-table-column
            prop="wktme4_start"
            label="工作时间四"
          >
            <template slot-scope="{row}">
              <div v-if="row.isVisible===0">
                <div v-if="row.wktme4_start">{{ row.wktme4_start }}</div>
                <div v-else>/</div>
              </div>
              <el-time-picker
                v-else-if="row.isVisible===1"
                v-model="row.wktme4_start"
                is-range
                :disabled="row.wktme3_start.length===0"
                format="HH:mm"
                :clearable="false"
                :editable="false"
                range-separator="~"
                start-placeholder="开始"
                end-placeholder="结束"
                @blur="val=>getTime(val,row,'wktme4_start')"
                @focus="val=>getTime(val,row,'wktme4_start')"
              />
            </template>
          </el-table-column>
          <el-table-column
            prop="wktme5_start"
            label="工作时间五"
          >
            <template slot-scope="{row}">
              <div v-if="row.isVisible===0">
                <div v-if="row.wktme5_start">{{ row.wktme5_start }}</div>
                <div v-else>/</div>
              </div>
              <el-time-picker
                v-else-if="row.isVisible===1"
                v-model="row.wktme5_start"
                is-range
                :disabled="row.wktme4_start.length===0"
                :clearable="false"
                :editable="false"
                format="HH:mm"
                range-separator="~"
                start-placeholder="开始"
                end-placeholder="结束"
                @blur="val=>getTime(val,row,'wktme5_start')"
                @focus="val=>getTime(val,row,'wktme5_start')"
              />
            </template>
          </el-table-column>
          <el-table-column
            v-if="operation==='setting'"
            width="100"
            fixed="right"
            label="操作"
          >
            <template slot-scope="{row}">
              <div class="operationClass">
                <el-button v-if="row.isVisible===0" type="text" @click="delRow(row)">删除</el-button>
                <el-button v-if="row.isVisible===1" type="text" @click="saveRow(row)">保存</el-button>
                <el-button v-if="row.isVisible===1" type="text" @click="cancelRow(row)">取消</el-button>
              </div>
            </template>
          </el-table-column>
        </el-table>
      </div>
      <span slot="footer" class="dialog-footer">
        <div class="footerButton">
src/views/scgl/gd_back.vue
ÎļþÒÑɾ³ý