
layui.use(['table', 'jquery'], function () {
  var table = layui.table;
  var form = layui.form,
    layer = parent.layer === undefined ? layui.layer : parent.layer,
    $ = layui.jquery;
  //监听表格复选框选择
  table.on('checkbox(demo1)', function (obj) {
    console.log(obj);
  });
  //监听工具条
  table.on('tool(demo1)', function (obj) {
    var data = obj.data;
    if (obj.event === 'view') {
      layer.open({
        type: 2,
        anim: 4,
        scrollbar: false,
        content: '/WorkOrder/ViewMyOrder/?orderKeyId=' + data.F_WORKORDERID,
        area: ['90%', '90%'],
        id: 'ViewMyOrder',
        title: '服务监督热线系统业务工单'

      });
    }
  });
  $ = layui.$, active = {
    //查询按钮
    reload: function () {
      //执行重载
      table.reload('recordtable', {
        page: {
          curr: 1 //重新从第 1 页开始
        }
        , where: {
          dateParty: $("#test10").val()
          , NowDateTime: new Date()
          , bussType: $("#bussType").val()
          , detailType: $("#bussDetail").val()
          , linkman: $("#linkman").val()
          , clfs: $("#clfs").val()
          , bblb: $("#bblb").val()
          , Qdyw: $("#Qdyw").val()
          , ywlx: $("#ywlx").val()
          , hfmyd: $("#hfmyd").val()
        }
      });
    }
  };

  $('.searchfilter .layui-btn').on('click', function () {
    var type = $(this).data('type');
    active[type] ? active[type].call(this) : '';
  });
  function saveAs (blob, filename) {
    var type = blob.type;
    var force_saveable_type = 'application/octet-stream';
    if (type && type !== force_saveable_type) { // 强制下载，而非在浏览器中打开
      var slice = blob.slice || blob.webkitSlice || blob.mozSlice;
      blob = slice.call(blob, 0, blob.size, force_saveable_type);
    }

    var url = URL.createObjectURL(blob);
    var save_link = document.createElementNS('http://www.w3.org/1999/xhtml', 'a');
    save_link.href = url;
    save_link.download = filename;

    var theevent = document.createEvent('MouseEvents');
    theevent.initMouseEvent('click', true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
    save_link.dispatchEvent(theevent);
    URL.revokeObjectURL(url);
  }
  //回车执行
  document.onkeydown = function (event) {
    var e = event || window.event || arguments.callee.caller.arguments[0];
    if (e && e.keyCode === 13) {
      //执行重载
      table.reload('recordtable', {
        page: {
          curr: 1 //重新从第 1 页开始
        }
        , where: {
          types: 0,
          dateParty: $("#test10").val()
          , NowDateTime: new Date()
          , bussType: $("#bussType").val()
          , detailType: $("#bussDetail").val()
          , linkman: $("#linkman").val()
        }
      });
    }
  };
  //导出到excel
  $('#ExToExcel').on('click', function () {
    var img = $("#progressImgage");
    var mask = $("#maskOfProgressImage");
    var dataModel = {
      dateParty: $("#test10").val()
      , bussType: $("#bussType").val()
      , detailType: $("#bussDetail").val()
    };
    var para = JSON.stringify(dataModel);
    $.ajaxLoading({
      url: "/WorkOrder/ExToExcelReport",
      type: "post",
      async: true,
      contentType: "application/json;charset=utf-8",
      dataType: "json",
      cache: false,
      data: para,
      success: function (dataContent, result) {

        if (dataContent.Code === "0") {
          var datajson = dataContent.Data.replace(/&quot;/g, "\"");
          var ItemList = JSON.parse(datajson);
          // alert(ItemList);
          var bytes = window.atob(ItemList);      //转换为byte  
          //处理异常,将ascii码小于0的转换为大于0  
          var ab = new ArrayBuffer(bytes.length);
          var ia = new Uint8Array(ab);
          for (var i = 0; i < bytes.length; i++) {
            ia[i] = bytes.charCodeAt(i);
          }

          var blob = new Blob([ab], { type: 'application/vnd.ms-excel' })
          var fileName = '工单数据.xls';

          if (dataContent.Message !== null && dataContent.Message !== "") {
            fileName = dataContent.Message;
          }

          //获取浏览器信息
          var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串  
          var isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1; //判断是否IE<11浏览器  
          var isEdge = userAgent.indexOf("Edge") > -1 && !isIE; //判断是否IE的Edge浏览器  
          var isIE11 = userAgent.indexOf('Trident') > -1 && userAgent.indexOf("rv:11.0") > -1;
          if (isIE || isEdge || isIE11) {
            navigator.msSaveBlob(blob, fileName);
          }
          else {
            saveAs(blob, fileName);
          }
        }
        else {
          layer.msg('数据转换失败！');
        }
      },
      error: function (XMLHttpRequest, textStatus, errorThrown) {
        layer.msg(textStatus);
        layer.msg(errorThrown);
      }
    });
  });

  //.监听当前 select，动态改变子项
  form.on('select(fcoptype)', function (d) {
    $.ajax({
      url: "/WorkOrder/GetBussType",
      type: "get",
      contentType: "application/json",
      dataType: "text",
      cache: false,
      data: { "bussnessType": d.value },
      success: function (result, status) {
        if (status) {
          $("#bussDetail").empty();
          $("#bussDetail").append("<option value='' >全部</option>");
          var list = eval("(" + result + ")");
          if (list.length > 0) {
            for (var i = 0; i < list.length; i++) {
              $("#bussDetail").append("<option  value='" + list[i].F_WorkOrderTypeId + "'>" + list[i].F_Name + "</option>");
            }
          }

          form.render('select');
        }
        else {
          layui.layer.alert("获取信息失败!", {
            icon: 2
            ,offset: '40%'
          });
        }

      }
    });
  });

  function Init () {
    if ($("#typemx").val() === $("#bussType").val()) {
      $("#typemx").val("");
    }
    //执行重载
    table.reload('recordtable', {
      page: {
        curr: 1 //重新从第 1 页开始
      }
      , where: {
        dateParty: $("#test10").val()
        , NowDateTime: new Date()
        , bussType: $("#bussType").val()
        , detailType: $("#typemx").val()
        , linkman: $("#linkman").val()
        , clfs: $("#clfs").val()
        , bblb: $("#bblb").val()
        , Qdyw: $("#Qdyw").val()
        , ywlx: $("#ywlx").val()
        , hfmyd: $("#hfmyd").val()
      }
    });
  }
  Init();
});