<template>
  <div style="background-color:#f7f7f7;padding:10px 10px;">
    <div class="zhuti" v-if="onaction == '1'">
      <div style="height:58px;line-height:58px;">
        <div style="color:#0006"> <span>商铺租赁服务</span> <span style="padding:0 5px;">></span> <span
            style="color:#000000e6">到期预警</span></div>
      </div>
      <!-- 线上 -->
      <div>
        <!-- 搜索 -->
        <div class="formSearch">
          <el-form :inline="true" :model="pagequery">
            <el-form-item label="合同名称">
              <el-input v-model="pagequery.contractName" placeholder="请输入" style="width:168px;" />
            </el-form-item>
          </el-form>

          <div>
            <el-button @click="onSubmit" style="background-color: #3F9B6A;color: #fff">查询
            </el-button>
            <el-button @click="resetting" class="buttonHover"
              style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;">重置
            </el-button>
          </div>
        </div>
        <div style="margin-bottom: 20px;">
          <el-button @click="openyujingSet()" style="background-color: #3F9B6A;color: #fff;padding:8px 15px;"
            icon="el-icon-circle-plus-outline">预警设置</el-button>
          <!-- <el-button @click="" style="background-color: #3F9B6A;color: #fff">批量导入</el-button> -->
        </div>
        <!-- 表格 -->

        <el-table :data="tableData"
          :header-cell-style="{fontSize: '14px',color:'#0009',fontWeight: 'normal',backgroundColor:'#F2F3F5'}">
          <el-table-column label="合同编号">
            <template slot-scope="scope">
              {{scope.row.contractName}}

            </template>
          </el-table-column>
          <el-table-column label="合同名称">
            <template slot-scope="scope">
              {{scope.row.contractName}}

            </template>
          </el-table-column>
          <el-table-column label="姓名">
            <template slot-scope="scope">
              {{scope.row.tenantName}}

            </template>
          </el-table-column>
          <el-table-column label="联系方式">
            <template slot-scope="scope">
              {{scope.row.tenantTelephone}}

            </template>
          </el-table-column>
          <el-table-column label="租赁资源">
            <template slot-scope="scope">
              {{scope.row.contractAmount}}

            </template>
          </el-table-column>
          <el-table-column label="租赁起止时间">
            <template slot-scope="scope">
              {{scope.row.contractSigningDate}}至{{scope.row.contractTerminationDate}}

            </template>
          </el-table-column>
          <el-table-column label="到期天数">
            <template slot-scope="scope">
              
              {{ calculateDaysUntilExpiration(scope.row.contractTerminationDate)}}
            </template>
          </el-table-column>
          <el-table-column label="操作" min-width="150" fixed="right">
            <template slot-scope="scope">
              <div @click="details(scope.row)" class="tableBtn greens">查看</div>
              <!-- <div @click="addgzd(scope.row)" class="tableBtn greens">发送提醒</div> -->
            </template>
          </el-table-column>
        </el-table>
        <div style="display: flex;justify-content: space-between;" class="bom">
          <div style="font-size: 14px;">共 <span style="color: #3F9B6A;">{{total}}</span> 项数据</div>
          <el-pagination :current-page="pagequery.pageNumber+1" :page-sizes="[10, 20, 50, 100]" :page-size="10"
            background small layout="prev, pager, next" :total="total" @size-change="handleSizeChange"
            @current-change="handleCurrentChange">
          </el-pagination>
        </div>

      </div>

    </div>






    <el-dialog title="预警设置" :visible.sync="yujingSet" style="padding: 0;" width="60%" center :close-on-click-modal="false" :show-close="false" top="20vh">
      <div>
        <div style="margin-bottom: 20px;">
          <el-form ref="form" :model="zhong" label-width="120px">
            <el-form-item label="合同剩余天数">
              <el-input v-model="zhong.contractExpirationDays"></el-input>
            </el-form-item>
            <el-form-item label="提醒内容">
              <wang-editor v-model="zhong.reminderContent" ref="editor" :height="200"></wang-editor>
            </el-form-item>



          </el-form>

        </div>
        <div style="display: flex;justify-content: flex-end;">
          <el-button @click="yuclose" class="buttonHover"
            style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;">返回</el-button>
          <el-button @click="yuChenk" style="background-color: #3F9B6A;color: #fff">确定</el-button>
        </div>
      </div>
    </el-dialog>

    <div class="zhuti" v-if="onaction == '3'">
      <div style="height:58px;line-height:58px;">
        <div style="color:#0006"> <span>出租管理</span> <span style="padding:0 5px;">></span> <span
            style="color:#000000e6">查看</span></div>
      </div>
      <div>
        <busCha :info="detailsinfo" @removeonaction="removeonaction"></busCha>
      </div>
      <!-- <div>
        <el-button class="buttonHover"
          style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;margin-top: 20px;"
          @click="removeonaction('1')">返回</el-button>
      </div> -->
    </div>

  </div>
  <!-- </div> -->

</template>

<script>
  import {
    contractGetAllnew,
  } from '../../../api/manage.js'
  import {
    cereReminderSet,
    cereReminderSetedit
  } from '../../../api/commodityLease.js'
  // import add from './add'
  import busCha from '../../../components/buscha/busCha'
  import wangEditor from "@/components/editor/index"
  export default {
    data() {
      return {
        zhong: {

        },
        yujingSet: false,
        detailsinfo: {},
        pagequery: {
          pageNumber: 0,
          pageSize: 10,
          dataStatus:'1',
          contractName: ''
        },
        tableData: [],
        total: 0,
        onaction: '1',
        info: {}
      }
    },
    components: {
      busCha,
      wangEditor
    },
    created() {
      this.getAll()

    },
    methods: {
      calculateDaysUntilExpiration(endDateString) {
            const endDate = new Date(endDateString);
            const today = new Date();
            const timeDifference = endDate - today;
            const daysDifference = Math.ceil(timeDifference / (1000 * 60 * 60 * 24));
            return daysDifference >= 0 ? daysDifference : '已过期';
        },
      yuclose() {
        this.yujingSet = false
      },
      yuChenk() {
        console.error(this.zhong)
        cereReminderSetedit(this.zhong).then(res => {
          console.error(res)
          if (res.code == 200) {
            this.$message({
              message: '预警设置成功',
              type: 'success'
            })
            this.yujingSet = false
          } else {
            this.$message({
              message: '预警设置失败',
              type: 'error'
            })
          }
        })
        
      },
      openyujingSet() {
        cereReminderSet({
          reminderType: '1'
        }).then(res => {
          console.error(res)
          this.zhong = res.data
        })
        this.yujingSet = true
      },
      addgzd(row) {
        this.detailsinfo = row
        this.onaction = '2'
      },
      details(row) {
        this.detailsinfo = row
        this.onaction = '3'
      },
      biangeng(row) {
        alert(`合同变更 - 店铺ID: ${row.id}`);
      },
      xuyue(row) {
        alert(`合同续约 - 店铺ID: ${row.id}`);
      },
      zhongzhi(row) {
        alert(`合同终止 - 店铺ID: ${row.id}`);
      },
      async getAll() {
        const res = await contractGetAllnew(this.pagequery)
        this.tableData = res.data.content
        this.total = res.data.totalElements
      },
      removeonaction(e) {
        console.error(e)
        this.onaction = e
      },
      handleCurrentChange(val) {
        this.pagequery.pageNumber = val - 1
        this.getAll()
      },
      handleSizeChange(val) {
        this.pagequery.pageSize = val
      },
      // 查询按钮
      async onSubmit() {
        this.pagequery.pageNumber = 0
        this.getAll()
      },
      //重置按钮
      resetting() {
        this.pagequery = {
            pageNumber: 0,
            pageSize: 10,
            dataStatus:'1',
            contractName: ''
          },
          this.getAll()
      },
    }

  }
</script>

<style scoped>
  .zhuti {
    padding: 0  20px 20px 20px;
    min-height: calc(100vh - 50px - 20px);
    background-color: #Fff;

  }
  .chengeXia{
    border-bottom: 6px solid #3F9B6A;padding-bottom: 4px;color: #3F9B6A;
  }

  /deep/ .el-form-item__content {
    line-height: 0;
  }

 

  .formSearch {
    display: flex;
    width: 100%;
    font-size: 14px;
    justify-content: space-between;
    padding-bottom: 10px;

  }

  .greens {
    color: #3F9B6A;
  }

  /deep/ .el-table__row {
    font-size: 14px;
    color:#000000e6;
    height:42px;
  }

  .fenye {
    margin-top: 20px;
    display: flex;
    justify-content: flex-end;
  }

  /deep/ .el-pagination.is-background .el-pager li:not(.disabled).active {
    background-color: #3F9B6A;
  }

  .el-row {
    margin-bottom: 20px;

    &:last-child {
      margin-bottom: 0;
    }
  }

  .el-col {
    border-radius: 4px;
  }

  .bg-purple-dark {
    background: #99a9bf;
  }

  .bg-purple {
    background: #d3dce6;
  }

  .bg-purple-light {
    background: #e5e9f2;
  }

  .grid-content {
    border-radius: 4px;
    min-height: 36px;
  }

  .row-bg {
    padding: 10px 0;
    background-color: #f9fafc;
  }

  /deep/ .bg-purple[data-v-0e3fe4ec] {
    background: #fff;
    height: 50px;
  }
    /deep/ .bg-purple[data-v-3bebae82]{
    background: #fff;
    height: 50px;
  }

::v-deep .bg-purple{
    background: #fff;
    height: 50px;
  }
  /deep/ .el-form--label-top .el-form-item__label {
    padding: 0;
  }
::v-deep .el-form-item{
  margin-bottom:16px;
}
  .device-form .el-form-item__label::after {
    content: "*";
    color: #1A1A1A;
    margin-left: 5px;
    font-size: 16px;
  }


  ::v-deep .el-dialog__wrapper {
    .el-dialog__header {
      background-color: #FAFAFA;
    }
  }
 ::v-deep .el-input__inner:focus {
      border: #3F9B6A 1px solid;
   }
  .dialog-footer {
    display: flex;
    justify-content: flex-end;
    border-top: solid rgba(209, 209, 209, 0.2) 2px;
    padding-top: 20px;
  }
 ::v-deep .el-input__inner:focus {
      border: #3F9B6A 1px solid;
   }
   ::v-deep .el-input__inner:hover {
        border: #3F9B6A 1px solid;
     }
     ::v-deep .el-select .el-input.is-focus .el-input__inner{
         border-color:#3F9B6A
     }
::v-deep .btn .el-button:focus,
.el-button:hover {
  border: 1px solid #3F9B6A;
}
.el-select-dropdown__item.selected{
    color: #3F9B6A;
}

.el-pagination__sizes .el-input .el-input__inner:hover{
    border-color: #3F9B6A;
}
::v-deep .el-dialog__wrapper{

  .dialog_css{
      margin-right: 12px;
      margin-top:61px !important;
      .el-dialog__title {
        font-size: 16px !important;
        font-weight: 600;
        color: #000;
      }
  }
  .diaslog_zhong{
     margin-left: 20%;
     margin-top:61px !important;
  }

}
 ::v-deep .diaslog_zhong{
     margin-left: 20%;
     margin-top:61px !important;
     .el-dialog__header{
       background-color:#fff;
       border-bottom:1px solid #EFEFEF;
       .el-dialog__title{
         font-size: 14px;
          color: #000000e6;
       }
     }
     .el-dialog__body{
       padding:10px 20px 30px 20px
     }
  }

 /deep/ .el-table_1_column_8 .hetong{
   color:#7DBB9A;
   text-decoration: underline;
}
/deep/ .first-column-bg {
    background-color: #FAFAFA !important;
  }

.el-table tr{
  height:56px;
}

::v-deep .table3{
  .el-table__empty-block{
    display:none;
  }
}
::v-deep .textarea{
  width: 85%;
   .el-textarea__inner{
    width: 100%;
  }
}
::v-deep .el-button--mini{
  padding: 7px 10px;
}
::v-deep .pass_input{
    width: 100%;
    .el-input__inner {
      border: none;
       padding:0;
       }
  }
::v-deep .pass_select{
  width: 100%;
 .el-input__inner {
   border: none;
   padding:0;
    }
  .el-icon-arrow-up:before{
    content:''
  }

}
 /deep/ .el-table--enable-row-hover .el-table__body tr:hover>td.el-table__cell{
  background-color: #fff;
}


</style>
<style lang="scss" scoped>
  ::v-deep .bian_css{
    .el-dialog__header{
      padding:0px;
    }
  }
  ::v-deep .buttonHover:hover{
    color:#3f9b6a !important;
    border-color: #c5e1d2 !important;
    background-color: #ecf5f0 !important;
    outline: none;
  }
  ::v-deep .el-pagination__total{
        position: absolute;
        left: 33px;
  }
</style>

