<template>
  <div style="background-color:#f7f7f7;padding:10px 10px;">
    <div class="zhuti">
      <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="formSel"

            label-position="left"
          >
            <el-form-item label="对账状态">
              <el-select
                v-model="formSel.state"
                placeholder="请选择"

                style="width: 100px;"
              >
                <el-option label="全部" value="全部" />
              </el-select>
            </el-form-item>
            <el-form-item label="日期">
              <el-date-picker
                    v-model="paryTime"
                     type="datetimerange"
                    value-format="yyyy-MM-dd HH:mm:ss"
                    style="width: 240px;"
                    range-separator="至"
                    start-placeholder="开始日期"
                    end-placeholder="结束日期">
                  </el-date-picker>
            </el-form-item>
            <el-form-item label="支付金额">
                <div>
                  <el-input
                    placeholder="请输入"

                    style="width: 80px;"
                    v-model="formSel.minMach">
                  </el-input>
                  至
                  <el-input
                    placeholder="请输入"

                    style="width:80px;"
                    v-model="formSel.maxMach">
                  </el-input>
                </div>
            </el-form-item>
            <el-form-item label="商品名称">
             <el-input
               placeholder="请输入"

               v-model="formSel.shopName">
             </el-input>
            </el-form-item>
            <el-form-item>
              <el-button
                style="background-color: #3F9B6A;color: #fff;"
                @click="onSubmit"
                >查询
              </el-button>
              <el-button
               class="buttonHover"
                 style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;"
                @click="resetting"
                >重置
              </el-button>
            </el-form-item>
          </el-form>

        </div>
        <div style="padding-bottom:20px;">
          <!-- <el-button
            style="background-color: #3F9B6A;color: #fff;"
            @click="resetting"
            >导出
          </el-button> -->
        </div>
        <!-- 表格 -->
        <el-table
          :data="tableData"
           :header-cell-style="{fontSize: '14px',color:'#0009',fontWeight: 'normal',backgroundColor:'#F2F3F5'}"
    >
          <el-table-column
            label="序号"
            min-width="4%"
          >
          <template slot-scope="scope">
            {{scope.$index+1}}
          </template>
          </el-table-column>
          <el-table-column
            label="商品名称"
            prop="merchantName"
            width="auto"
            min-width="12%"
          >
          </el-table-column>
          <el-table-column
            label="订单编号"
            prop="orderNo"
            width="auto"
            min-width="12%"
          >

          </el-table-column>
          <el-table-column
            label="订单金额"
            prop="amount"
            width="auto"
            min-width="5%"
          >

          </el-table-column>
          <el-table-column
            label="支付金额"
            prop="realAmount"
            width="auto"
            min-width="10%"

          >
          </el-table-column>
          <el-table-column
            prop="payId"
            label="交易号"
            width="auto"
            min-width="10%"

          >

          </el-table-column>
          <el-table-column
            prop="createDate"
            label="支付完成时间"
            width="auto"
            min-width="10%"

          >

          </el-table-column>
<el-table-column
            prop="times"
            label="对账日期"
            width="auto"
            min-width="10%"

          >

          </el-table-column>
          <el-table-column
            prop="zt"
            label="核对状态"
            width="auto"
            min-width="10%"

          >

          </el-table-column>
          <el-table-column
            label="操作"
            width="auto"
            min-width="17%">
            <template slot-scope="scope">
              <div @click="addbuss(scope.row,scope.$index)" class="tableBtn greens">对账</div>

            </template>
          </el-table-column>
        </el-table>
        <div class="fenye">
          <el-pagination
            class="pagination"
            :hide-on-single-page="flag"
            background
            small
            :current-page="currentPage"
            :page-sizes="[10, 20, 50, 100]"
            :page-size="pageSize"
            layout="total,sizes,prev, pager,next"
            :total="total "
            @size-change="handleSizeChange"
            @current-change="handleCurrentChange"
          />
        </div>


      </div>
    </div>

  </div>
</template>

<script>
import {merchantQueries} from '../../../api/online.js'
export default {
  data () {
    return {
      rules: {},
      currentPage: 1,
      total: 100,
      flag: false,
      pageSize: 10,
      ggXin: false,
      index:1,
      formSel:{
        state:'',
        minMach:'',
        maxMach:'',
        shopName:'',
      },
      paryTime:[],
      tableData: [],
      pageindex: {
        merchantId:'9E602E5977EC48DEA06D42C67F4C93F0',
        page: 1,
        limit: 10,
        orderTimeStart:'',
        orderTimeEnd:'',
      },
    }
  },
  computed: {},
  mounted(){
    this.getOrder()
  },
  methods: {
   async getOrder(){
     this.getFirstDayOfYear()
    this.getLastDayOfYear()
   const res =   await merchantQueries(this.pageindex)
    this.tableData = JSON.parse(res.data).records
  this.total = JSON.parse(res.data).records.length

    },
getFirstDayOfYear() {
  const now = new Date();
  const year = now.getFullYear();
  const firstDay = new Date(year, 0, 1, 0, 0, 0, 0);
  this.pageindex.orderTimeStart = this.formatDate(firstDay);
},
  getLastDayOfYear() {
    const now = new Date()
    const year = now.getFullYear()
    const lastDay = new Date(year, 11, 31, 23, 59, 59, 999)
    this.pageindex.orderTimeEnd = this.formatDate(lastDay)
  },
  formatDate(date) {
    const year = date.getFullYear()
    const month = String(date.getMonth() + 1).padStart(2, '0')
    const day = String(date.getDate()).padStart(2, '0')
    const hours = String(date.getHours()).padStart(2, '0')
    const minutes = String(date.getMinutes()).padStart(2, '0')
    const seconds = String(date.getSeconds()).padStart(2, '0')
    return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`
  },
    addbuss (item,val) {
             const h = this.$createElement;
                     this.$msgbox({
                       title: '对账',
                       message: h('p', null, [
                         h('span', null, '是否已对账 '),
                       ]),
                       showCancelButton: true,
                       showClose:false,
                       confirmButtonText: '确定',
                       cancelButtonText: '取消',
                       customClass:'oe-dialog-btn',
                       beforeClose: (action, instance, done) => {
                         if (action === 'confirm') {
                          this.$message({
                            message: '对账成功',
                            type: 'success'
                          })
                            done();
                         } else {
                           done();
                         }
           }
           })


    },
    onSubmit(){

      if(this.formInline.paryTime.length !=0){
        this.pageindex.orderTimeStart = this.formInline.paryTime[0]
          this.pageindex.orderTimeEnd = this.formInline.paryTime[1]
          const res =   merchantQueries(this.pageindex).then(res=>{
                this.tableData = JSON.parse(res.data).records
                this.total = JSON.parse(res.data).records.length
              })
      }

    },
    resetting(){
      this.pageindex={
        merchantId:'9E602E5977EC48DEA06D42C67F4C93F0',
        page: 1,
        limit: 10,
        orderTimeStart:'',
        orderTimeEnd:'',
      }
    this.getOrder()

    },
    handleSizeChange(){

    },
    handleCurrentChange(){

    },
    closeFn () {
      this.ggXin = false
      this.index = 1
    }
  }
}
</script>

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

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



::v-deep .formSearch {
  position: relative;
  margin: 20px 0;
  display: flex;
  width: 100%;
  height: 30px;
  font-size: 14px;
  justify-content: space-between;
  .el-form-item__label{
    font-size: 14px;
    color: #000;
  }
}

.greens {
  color: #3F9B6A;
}


.fenye {
  margin-top: 20px;
  display: flex;
  justify-content: flex-start;
  position: relative;
}

/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/ .el-form--label-top .el-form-item__label {
  padding: 0;
}
.demo-input-suffix{
  display: flex;
  margin-right: 20px;
}
.pagination{
  text-align:right;
  line-height: 20px;
}

</style>
<style lang="scss" scoped>

  ::v-deep .buttonHover:hover {
    color: #3f9b6a !important;
    border-color: #c5e1d2 !important;
    background-color: #ecf5f0 !important;
    outline: none;
  }


</style>
