<style scoped>
  .bg {
    background-color: blue;
    height: 1px;
    border: 0;
  }
  .app-row {
    background-color: white;
    padding: 10px 10px 0 10px;
    border-bottom: 1px solid rgba(235, 235, 235, 0.5);
  }
  .search_input {
    border: 0;
    outline: none;
  }
  .font{
    font: 15px PingFang-SC-Medium;
    color: #666666;
  }
  .input-font{
    font: 15px PingFang-SC-Medium;
    color: #333333;
  }
  .btn-font{
    font:600 16px PingFang-SC-Bold;
    color: #499EDF;
  }
  .btn-color{
    background-color: #FFFFFF;
    border-radius: 10px ;
    border: 1px solid #499EDF;
  }
  .app-text {
    font-size: 12px;
  }
  .panel-self{
    border-radius: 10px;
    border:1px solid #499EDF;
    background-color: #F8F8F8;
  }
  .yybtn-color{
    background-color:#499edf;
    border-radius: 4px ;
    border: 1px solid #499EDF;
    color: #FFFFFF;
    font: 14px PingFang-SC-Bold;
  }
  .qxbtn-color{
    background-color: #FFFFFF;
    border-radius: 4px ;
    color: #499edf;
    font: 14px PingFang-SC-Bold;
    border: 1px solid #499EDF;
  }
  .button_shrink_top {width: 35px; height: 35px; background-size:100%;background-image: url("../../../../../static/newStyle/stretch_top.png")}
  .button_shrink_bottom {width: 35px; height: 35px;  background-size:100%;background-image: url("../../../../../static/newStyle/stretch_bottom.png")}
  .button_shrink_left {width: 35px; height: 35px;  background-size:100%;background-image: url("../../../../../static/newStyle/stretch_left.png")}
  .button_shrink_right {width: 35px; height: 35px; background-size:100%;background-image: url("../../../../../static/newStyle/stretch_right.png")}

</style>

<template>
  <div class="auto">
    <criteria-paged :model="model" v-ref:paged>
      <criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:cri>
        <div partial>
          <form>
            <div class="row app-row">
              <div class="col-xs-4">
                <img src="../../../../assets/安检状态.png" style="width: 20px;margin-bottom: 5px" alt="">
                <label for="f_plan_name" class="font text-left">计划名称：</label>
              </div>
              <div class="col-xs-8" >
                <input id="f_plan_name" class="search_input input-font"
                       v-model=model.f_plan_name condition="f_plan_name like '%{}%'" />
              </div>
            </div>
            <div class="row app-row">
              <div class="col-xs-4">
                <img src="../../../../assets/用户ID.png" style="width: 20px;margin-bottom: 5px" alt="">
                <label for="f_userinfo_code" class="font text-left">用户编号：</label>
              </div>
              <div class="col-xs-8" >
                <input id="f_userinfo_code" class="search_input input-font"
                       v-model=model.f_userinfo_code condition="ti.f_userinfo_code like '%{}%'" />
              </div>
            </div>

            <div class="row app-row">
              <div class="col-xs-4">
                <img src="../../../../assets/用户姓名.png" style="width: 20px;margin-bottom: 5px" alt="">
                <label for="f_user_name" class="font text-left">用户姓名：</label>
              </div>
              <div class="col-xs-8" >
                <input id="f_user_name" class="search_input input-font"
                       v-model=model.f_user_name condition="ti.f_user_name like '%{}%'" />
              </div>
            </div>
            <div class="row app-row" v-show="$parent.$parent.criteriaShow">
              <div class="col-xs-4">
                <img src="../../../../assets/小区.png" style="width: 20px;margin-bottom: 5px" alt="">
                <label for="f_keyword" class="font text-left">小区名称：</label>
              </div>
              <div class="col-xs-8" >
                <input id="f_keyword" class="search_input input-font"
                       v-model="model.f_residential_area" condition="ti.f_residential_area like '%{}%'" />
              </div>
            </div>
            <div class="row app-row" v-show="$parent.$parent.criteriaShow">
              <div class="col-xs-4">
                <img src="../../../../assets/小区.png" style="width: 20px;margin-bottom: 5px" alt="">
                <label for="f_building" class="font text-left">楼&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;号：</label>
              </div>
              <div class="col-xs-8" >
                <input id="f_building" class="search_input input-font"
                       v-model="model.f_building" condition="ti.f_building = '{}'" />
              </div>
            </div>
            <div class="row app-row" v-show="$parent.$parent.criteriaShow">
              <div class="col-xs-4">
                <img src="../../../../assets/小区.png" style="width: 20px;margin-bottom: 5px" alt="">
                <label for="f_unit" class="font text-left">单&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;元：</label>
              </div>
              <div class="col-xs-8" >
                <input id="f_unit" class="search_input input-font"
                       v-model="model.f_unit" condition="ti.f_unit = '{}'" />
              </div>
            </div>
            <div class="row app-row" v-show="$parent.$parent.criteriaShow">
              <div class="col-xs-4">
                <img src="../../../../assets/shijian.png" style="width: 20px;margin-bottom: 5px" alt="">
                <label for="f_plan_year" class="font text-left">计划年份：</label>
              </div>
              <div class="col-xs-8" >
                <input id="f_plan_year" class="search_input input-font"
                       v-model="model.f_plan_year" condition="f_plan_year = '{}'" />
              </div>
            </div>
            <div class="row app-row" v-show="$parent.$parent.criteriaShow">
              <div class="col-xs-4">
                <img src="../../../../assets/shijian.png" style="width: 20px;margin-bottom: 5px" alt="">
                <label for="f_plan_month" class="font text-left">计划月份：</label>
              </div>
              <div class="col-xs-8" >
                <input id="f_plan_month" class="search_input input-font"
                       v-model="model.f_plan_month" condition="f_plan_month = '{}'" />
              </div>
            </div>
            <div class="row app-row" v-show="$parent.$parent.criteriaShow">
              <div class="col-xs-4">
                <img src="../../../../assets/小区.png" style="width: 20px;margin-bottom: 5px" alt="">
                <label  class="font text-left">用户地址：</label>
              </div>
              <div class="col-xs-8" >
                <input  class="search_input input-font"
                       v-model=model.f_address condition="ti.f_address like '%{}%'" />
              </div>

            </div>

            <div class="row app-row" v-show="$parent.$parent.criteriaShow">
              <div class="col-xs-4">
                <img src="../../../../assets/用户类型.png" style="width: 20px;margin-bottom: 5px" alt="">
                <label for="f_user_type" class="font text-left">用户类型：</label>
              </div>
              <div class="col-xs-8" >
                <v-select id="f_user_type" :value.sync="model.f_user_type" class="input-font"
                          :options='$parent.$parent.user_types' placeholder='请选择用户类型'
                          v-model="model.f_user_type" condition="ti.f_user_type='{}'" close-on-select clear-button></v-select>
              </div>
            </div>
            <div class="row app-row" v-show="$parent.$parent.criteriaShow">
              <div class="col-xs-4">
                <img src="../../../../assets/安检状态.png" style="width: 20px;margin-bottom: 5px" alt="">
                <label  class="font text-left">挂表方式：</label>
              </div>
              <div class="col-xs-8" >
                <v-select   :value.sync="model.f_flow_direction"
                            :value-single="true"
                            :options='$parent.$parent.flow_direction' placeholder='请选择挂表方式'
                            v-model="model.f_flow_direction" condition="tm.f_flow_direction='{}'" close-on-select clear-button></v-select>
              </div>
            </div>
            <div class="row app-row" v-show="$parent.$parent.criteriaShow">
              <div class="col-xs-4">
                <img src="../../../../assets/有无计划.png" style="width: 20px;margin-bottom: 5px" alt="">
                <label for="f_no_checkplan" class="font text-left">有无计划：</label>
              </div>
              <div class="col-xs-8" >
                <v-select id="f_no_checkplan" :value.sync="model.f_no_checkplan" class="input-font"
                          :options='$parent.$parent.planstates' placeholder='请选择有无计划'
                          v-model="model.f_no_checkplan" condition="ti.f_no_checkplan='{}'" close-on-select clear-button></v-select>
              </div>
            </div>
<!--            <div class="row app-row" v-show="false">-->
<!--              <div class="col-xs-4">-->
<!--                <img src="../../assets/是否已检.png" style="width: 20px;margin-bottom: 5px" alt="">-->
<!--                <label for="f_state" class="font text-left">是否已检：</label>-->
<!--              </div>-->
<!--              <div class="col-xs-8" >-->
<!--                <v-select id="f_state" :value.sync="model.f_state" class="input-font"-->
<!--                          :options='$parent.$parent.check_states' placeholder='请选择是否已检'-->
<!--                          v-model="model.f_state" condition="ti.f_state='{}'" close-on-select clear-button></v-select>-->
<!--              </div>-->
<!--            </div>-->
            <div class="row app-row" v-show="$parent.$parent.criteriaShow">
              <div class="col-xs-4">
                <img src="../../../../assets/安检状态.png" style="width: 20px;margin-bottom: 5px" alt="">
                <label for="f_last_state" class="font text-left">安检状态：</label>
              </div>
              <div class="col-xs-8" >
                <v-select id="f_last_state" :value.sync="model.f_last_state" class="input-font"
                          :options='$parent.$parent.last_check_states' placeholder='请选择安检状态'
                          v-model="model.f_last_state" condition="ti.f_last_check_state='{}'" close-on-select clear-button></v-select>
              </div>
            </div>
            <div class="row app-row" v-show="$parent.$parent.criteriaShow">
              <div class="col-xs-4">
                <img src="../../../../assets/上传状态.png" style="width: 20px;margin-bottom: 5px" alt="">
                <label for="f_upload_state" class="font text-left">上传状态：</label>
              </div>
              <div class="col-xs-8" >
                <v-select id="f_upload_state" :value.sync="model.f_upload_state" class="input-font"
                          :options='$parent.$parent.upload_states' placeholder='请选择上传状态'
                          v-model="model.f_upload_state" condition="ti.f_upload_state='{}'" close-on-select clear-button></v-select>
              </div>
            </div>
            <div class="row text-center" style="margin-top: 20px;">
              <button type="button" class="btn btn-lg btn-font btn-color" style="width: 45%;" @click="search">查询</button>
              <div style="float: right;margin-right: 3% " class="button_spacing" :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"  @click="$parent.$parent.hidden()"></div>
            </div>
            <!--<div class="row app-btn">-->
              <!--<button class="btn btn-primary col-xs-6" type="button"  @click="search"><span class="glyphicon  glyphicon-search" style="margin-right: 20px;">查询</span></button>-->
            <!--</div>-->
            <div style="height:30px;"></div>
          </form>
        </div>
      </criteria>
      <list :model="model" partial='list'>
        <div partial>
          <div @click="$parent.$parent.$parent.inspect(row)" class="auto app-text" style="margin-top: 5px;">
            <div class="panel" style="padding: 10px 10px 5px 10px;">
              <div class="panel-body panel-self">
                <div class="col-xs-12">
                  <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户编号:</b></p>
                  <p class="panel-title col-xs-7 text-left input-font" style="width: 79%">{{ row.f_userinfo_code }}</p>
                </div>
                <div class="col-xs-12">
                  <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户名称:</b></p>
                  <p class="panel-title col-xs-7 text-left input-font" style="width: 79%">{{ row.f_user_name }}</p>
                </div>
                <div class="col-xs-6">
                  <p class="panel-title col-xs-5 text-left font"><b>用户类型:</b></p>
                  <p class="panel-title col-xs-7 text-left input-font">{{ row.f_user_type }}
                  </p>
                </div>
                <div class="col-xs-6">
                  <p class="panel-title col-xs-5 text-left font"><b>计划名称:</b></p>
                  <p class="panel-title col-xs-7 text-left input-font">{{ row.f_plan_name }}</p>
                </div>
                <div class="col-xs-12">
                  <p class="panel-title text-left font" style="width: 23%;float: left"><b>用户电话:</b></p>
                  <p class="panel-title text-left input-font" style="width: 77%">{{ row.f_user_phone2 ? row.f_user_phone2 : row.f_user_phone }}
                    <img src="../../../../assets/phone.png" style="width: 6%" v-on:click.stop.prevent='$parent.$parent.$parent.makeAPhoneCall(row.f_user_phone2 ? row.f_user_phone2 : row.f_user_phone)'></img>
                  </p>
                </div>
                <div class="col-xs-12">
                  <p class="panel-title text-left font" style="width: 21%;float: left"><b>用户地址:</b></p>
                  <p class="panel-title text-left input-font" style="width: 79%">{{ row.f_address }}</p>
                </div>
                <div class="col-xs-6">
                  <p class="panel-title col-xs-5 text-left font"><b>安检状态:</b></p>
                  <p class="panel-title col-xs-7 text-left input-font">{{ row.f_last_check_state }}</p>
                </div>
                <div class="col-xs-6">
                  <p class="panel-title col-xs-5 text-left font"><b>上传状态:</b></p>
                  <p class="panel-title col-xs-7 text-left input-font">{{ row.f_upload_state }}</p>
                </div>
                <div class="row">
                  <p class="panel-title col-xs-4 text-left font">有无计划</p>
                  <p class="panel-title col-xs-8 text-left input-font">{{ row.f_no_checkplan }}</p>
                </div>
                <div class="row" v-if="row.f_last_check_state=='到访不遇'">
                  <p class="panel-title col-xs-4 text-left font">到访不遇次数</p>
                  <p class="panel-title col-xs-8 text-left input-font">{{ row.f_check_version }} 次</p>
                </div>
<!--                <div class="row text-right" v-show="row.f_upload_state != '已传'" >-->
<!--                      <button type="button" class="btn yybtn-color" v-on:click.stop.prevent='$parent.$parent.$parent.reserve($index)'>预约</button>&nbsp;-->
<!--                      <button type="button" class="btn qxbtn-color" v-if ='row.f_prearranged_date'-->
<!--                              v-on:click.stop.prevent='$parent.$parent.$parent.cancelReserve($index, row.id)'>取消预约</button>-->
<!--                </div>-->
              </div>
            </div>

          </div>
        </div>
      </list>
    </criteria-paged>
    <modal :show.sync="showModal">
      <div slot="modal-header" class="modal-header">
        <h4 class="modal-title">
          选择预约时间
        </h4>
      </div>
      <div slot="modal-body" class="modal-body">
        <input type="datetime-local" v-model="f_preset_dt">
      </div>
      <div slot="modal-footer" class="modal-footer">
        <button type="button" class="btn btn-default" @click="genuineReserve">确认</button>
      </div>
    </modal>
    <!--<back-page :need-back='true'  @flag="$back()"></back-page>-->
  </div>
</template>

<script>
  import LocalPagedList from '../../../../plugins/LocalPagedList'
  import Vue from 'vue'
  import { PagedList,HttpResetClass} from 'vue-client'
  import * as Util from '../../../Util'

  export default {
    title: '安检计划项',
    data() {
      return {
        model:Vue.android? new LocalPagedList('androidGetHasDoneTS',5): new PagedList( 'AndroidRest/api/af-safecheck/sql/androidGetHasDoneTS',5),
        showModal: false,
        param: null,
        criteriaShow: false,
        f_preset_dt : Util.to3339TimeString(),
        flow_direction:[
          {label: '全部', value: ''},
          {label: '左表', value: '左表'},
          {label: '右表', value: '右表'}
        ],
        check_states: [
          {label: '请选择安检状态', value: ''},
          {label: '未检', value: '未检'},
          {label: '已检', value: '已检'},
        ],
        last_check_states: [
          {label: '请选择上次安检状态', value: ''},
          {label: '入户', value: '入户'},
          {label: '拒检', value: '拒检'},
          {label: '到访不遇', value: '到访不遇'},
          {label: '未使用天然气', value: '未使用天然气'}
        ],
        upload_states: [
          {label: '请选择上传状态', value: ''},
          {label: '未传', value: '未传'},
          {label: '已传', value: '已传'}
        ],
        user_types: [
          {label: '请选择用户类型', value: ''},
          {label: '民用', value: '民用'},
          {label: '非民用', value: '非民用'},
        ],
        verify_state: [
          {label: '请选择审核状态', value: ''},
          {label: '未审核', value: '未审核'},
          {label: '打回', value: '打回'}
        ],
        planstates:[
        {label: '请选择有无安检计划', value: ''},
        {label: '有计划安检', value: '有计划安检'},
        {label: '无计划安检', value: '无计划安检'},
        ]
      }
    },
    ready(){
      this.$refs.paged.$refs.cri.model.f_state = '已检'
    },
    methods: {
      refresh() {
        console.log("refresh items state")
        // hard code relationship
        this.$refs.paged.$refs.cri.search()
      },
      reload(){
        console.log('页面刷新 ')
        this.$refs.paged.loadPage(this.$refs.paged.model.pageIndex)
      },
      inspect(row) {
        if(this.enableButton){
          return
        }
        this.enableButton=true
        new HttpResetClass().load('POST',`${this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/查询计划项表信息TS`, {data: {f_userid: row.f_userinfoid}}).then((response) => {
        console.log(JSON.stringify(response))
        row['f_plan_meters'] = response.data
          var pardate = {
            _this:this,
            title:'安检计划',
            safe:true
          }
          this.$dispatch('gotoson',pardate)
          this.enableButton=false
          this.$goto('safecheck-order-v-ts', {f_plan_id: row.f_plan_id, item: row, role: 'inspect', buttonState:false}, 'self', this.reload)
        /* if (row.f_user_type == '民用') {
          this.$goto('paper-set', {f_plan_id: row.f_plan_id, item: row, role: 'inspect'}, 'self', this.reload)
        } else {
          this.$goto('paper-set-noncivil', {f_plan_id: row.f_plan_id, item: row, role: 'inspect'}, 'self', this.reload)
        }*/
      }).catch((mes)=>{
        this.$showMessage("网络故障，请稍候再试!")
          this.enableButton=false
      })

      },
      makeAPhoneCall(phoneNumber) {
        this.$androidUtil.makeAPhoneCall(phoneNumber)
      },
      reserve (idx) {
        this.param = idx
        this.showModal = true
      },
      cancelReserve (idx, id) {
        if(Vue.android){
          let res =  this.$androidUtil.bzLogic('BookingCheckTS', {dt: '', id: id})
          this.$set('model.rows[' + idx + '].f_prearranged_date', null)
          if (res.code == 200) {
            this.$showMessage("取消预约成功")
          }
        }else {
          this.$androidUtil.bzLogic('PCbookingCheckTS', {dt: '', id: id}).then((repanse) => {
            this.$set('model.rows[' + idx + '].f_prearranged_date', null)
            if (repanse.data.code == 200) {
              alert("取消预约成功!")
            }
          })
        }},
      genuineReserve () {
        if(Vue.android){
          if (!this.f_preset_dt) {
            this.$showMessage('请选择一个日期')
            return
          }
          let pdt = this.f_preset_dt.replace('T', ' ')
          let respanse =  this.$androidUtil.bzLogic('BookingCheckTS', {id: this.model.rows[this.param].id, dt: pdt})
          this.$set('model.rows[' + this.param + '].f_prearranged_date', pdt)
          if(respanse.code == 200) {
            this.$showMessage("预约成功!")
          }
          this.showModal = false
        }else {
          if (!this.f_preset_dt) {
            alert('请选择一个日期')
            return
          }
          let pdt = this.f_preset_dt.replace('T', ' ')
          this.$androidUtil.bzLogic('PCbookingCheckTS', {id: this.model.rows[this.param].id, dt: pdt}).then((res) => {
            this.$set('model.rows[' + this.param + '].f_prearranged_date', pdt)
            if(res.data.code == 200) {
              alert("预约成功!")
            }
            this.showModal = false
          })
        }
      },
      selfSearch (args) {
        //args.condition += " and f_complete = '已完成' "
        console.log('args ==>' + JSON.stringify(args))
        this.model.search(args.condition,args.model)
      },
      hidden() {
        this.criteriaShow = !this.criteriaShow
      }
    }
  }
</script>
