<script>

let popWinObjaf291x1;
let popWinObjaf291x2;
let popWinObjaf291x3;
function openAf291x(p_mode) { {*詳細画面 1:荷動履歴, 2:発注履歴, 3:受注履歴*}
  let pmode = "1";
  let frmh = $("#headerTop");
  let detail = $("#detail").find(".detail.selectRow");

  if (pmode == "2" && detail.length == 0) {
    alert("行を選択してください。");
    return false;
  }

  {*子window Open*}
  var wwin = 'af291xChild'+p_mode;
  $('#postjump').remove();
  if (p_mode == "1") {
    if( (popWinObjaf291x1) && (!popWinObjaf291x1.closed) ){
      popWinObjaf291x1.close();
    }
    popWinObjaf291x1 = window.open("about:blank",wwin);
  } else if (p_mode == "2") {
    if( (popWinObjaf291x2) && (!popWinObjaf291x2.closed) ){
      popWinObjaf291x2.close();
    }
    popWinObjaf291x2 = window.open("about:blank",wwin);
  } else if (p_mode == "3") {
    if( (popWinObjaf291x3) && (!popWinObjaf291x3.closed) ){
      popWinObjaf291x3.close();
    }
    popWinObjaf291x3 = window.open("about:blank",wwin);
  } else {
    return false;
  }

  let wurl = "{$_ROOT_URL}/product/af291x" + p_mode + "/search.php";
  let html = "";

  let spktcd = common.getValue(frmh.find(".spktcd"));
  let spktnm = common.getValue(frmh.find(".spktnm"));
  let jan = common.getValue(frmh.find(".jan"));
  let ijan = common.getValue(frmh.find(".ijan"));


  {*パラメータ作成:詳細画面でも条件変更できるので、p_ではない*}
  html = '<form method="post" action="'+wurl+'" id="postjump" target="'+wwin+'" style="display: none;">';
  html += '<input type="hidden" name=p_title value="{$_PRODUCT_NAME}" >';
  html += '<input type="hidden" name=p_apid value="af291x" >';
  html += '<input type="hidden" name=spktcd value="' + spktcd + '" >';
  html += '<input type="hidden" name=spktnm value="' + spktnm + '" >';
  html += '<input type="hidden" name=jan value="' + jan + '" >';
  html += '<input type="hidden" name=ijan value="' + ijan + '" >';
  html += '<input type="hidden" name=p_mode value="1" >';
  html += '</form>';
console.log(html);
  {*子windowに対してpost*}
  $("body").append(html);
  $('#postjump').submit();
  $('#postjump').remove();

  noEventAll();
}

function closeAf291x() {  {*画面変更可*}
{*
  $("#detailTop").removeClass("noevent");
  $("#funcMenu").removeClass("noevent");
*}
}

function noEventAll() {  {*画面変更不可*}
{*
  $("#detailTop").addClass("noevent");
  $("#funcMenu").addClass("noevent");
*}
}


{*-- ここからjsでのデータ表示用 ---------------------------------------------------*}
function doHeaderEnable(pmode) { {*pmode:H Header有効・D 明細有効*}
  let h = $("#headerTop");
  let d = $("#detailTop");
  let m = $("#funcMenu");

  let h1 = h.find(".header1");
  let h2 = h.find(".header2");
  if (pmode == "H") { {*Header有効*}
    h1.removeClass("noevent");
    h2.addClass("noevent");
    d.addClass("noevent");

    $(".Func2").removeClass("noevent");
    $(".Func5").addClass("noevent");
    $(".Func7").addClass("noevent");
    $(".Func8").addClass("noevent");
    $(".Func9").addClass("noevent");

    {*ヘッダー項目クリア*}
    h.find(".keycd").focus();
    h.find(".modelbl").removeClass("newLabel");

  } else {
    h1.removeClass("noevent");
    h2.removeClass("noevent");
    d.removeClass("noevent");
    $(".Func2").removeClass("noevent");
    $(".Func5").removeClass("noevent");
    $(".Func7").removeClass("noevent");
    $(".Func8").removeClass("noevent");
    $(".Func9").removeClass("noevent");
    {*データ部フォーカス*}
    h2.find(".spktcd1").focus();
    h.find(".modelbl").addClass("newLabel");
  }
}

var init_data={
  vlin:'1',
};

function clearDetail() {  {*明細クリア*}
  $("#detail .detail").remove();
}

function clearHeader() {  {*headerクリア*}
  let frm = $("#headerTop");
  let container = frm.closest(".container");
  $("#bank").hide();

  doHeaderEnable("H");
  common.clearInputData(container);
}

function setOneRow() {
  clearDetail();  {*一旦クリア*}
  {*明細に最初の一行追加*}
  var el = af291x_detail.appendRow(init_data);
  $("#detail").append(el);
  var detail = $("#detail").find(".detail");
  detail.find(".datepicker").each(function (index) {
    common.setDatepickerInfo($(this));
  });
}


function dspDetail() { {*データ表示*}
  let frm = $("#headerTop");
  let detail = $("#detail").find(".detail");

  clearDetail();  {*一旦クリア*}
  common.setValue("#sum_psum3105",""); {*フッターもクリア*}
  common.setValue("#sum_psum3109",""); {*フッターもクリア*}

  var el = "";

  var container = $(".container");
  sendData = {};
  sendData = common.getContainerInputData(container);

  common.postData(
    "./search.php"
    , sendData
    , function name(data) {
      var d = JSON.parse(data);
      if (d.ret == "0") {

        if(d.cnt != "0") {
          {*ヘッダー情報を埋める*}
          common.dspDetailData(d.ret_header,frm);

          {*行作成*}
          if(d.cntpsum != "0") {
            {*フッター情報を埋める*}
            common.setValue("#sum_psum3105",common.addFigure(d.ret_array[0]["tpsum3105"]));
            common.setValue("#sum_psum3109",common.addFigure(d.ret_array[0]["tpsum3109"]));

            d.ret_array.forEach((item, i) => {
              el += af291x_detail.appendRow(item);
            });
            $("#detail").append(el);
          } 

          doHeaderEnable("D");
        }

      }
    }, function name(params) {
      alert(params.msg);
    }
  )
}
{*明細行用関数*}
var af291x_detail = {
  appendRow: function (d) {
    var n = stringUtil.nvl;
    var row =
    ' <div class="col wp-100 detail"> ' +
    '<div class="col wp-100 rowinfo detailMain janGrp">' +
    '  <div class="col wp-100  date"> ' +
    {*1行目*}
    '    <div class="col wp-100 "> ' +
    '      <div class="item wd-SS inputReadOnly ktktcd">' + n(d.ktktcd) + '</div>' +
    '      <div class="item wd-M  inputReadOnly ktktnm">' + n(d.ktktnm) + '</div>' +
    '      <div class="item wd-number inputReadOnly psum3105 number">' + common.addFigure(n(d.psum3105)) + '</div>' +
    '      <div class="item wd-number inputReadOnly psum3109 number">' + common.addFigure(n(d.psum3109)) + '</div>' +
    '      <div class="item wd-S  inputReadOnly htcls">' + n(d.htcls) + '</div>' +
    '    </div>' +
    {*非表示項目*}
    '  </div>' +
    '</div>' +
    '<hr>' +
    ' </div> ';
    return row;
  },
}


{*-- ここまでjsでのデータ表示用 ---------------------------------------------------*}


  $(document).ready(function(){
    /* 明細 高さ 自動設定
    //===================================================================*/
    common.setDetailHeight( $("#detail") );

    /* イベント
    //===================================================================*/
    //　F1
    $(document).on("click", ".Func1:not('.noevent')", function(e) {
    });
    //　F2 表示
    $(document).on("click", ".Func2:not('.noevent')", function(e) {
      $(".btn-search-before").trigger("click");
    });
    //　F3 
    $(document).on("click", ".Func3:not('.noevent')", function(e) {
    });
    //　F4 
    $(document).on("click", ".Func4:not('.noevent')", function(e) {
    });
    //　F5 クリア
    $(document).on("click", ".Func5:not('.noevent')", function(e) {
      clearDetail();
      clearHeader();
      doHeaderEnable("H");
    });
    //　F6
    $(document).on("click", ".Func6:not('.noevent')", function(e) {
    });
    //　F7 荷動履歴
    $(document).on("click", ".Func7:not('.noevent')", function(e) {
      openAf291x("1");
    });
    //　F8 発注履歴
    $(document).on("click", ".Func8:not('.noevent')", function(e) {
      openAf291x("2");
    });
    //　F9 受注履歴
    $(document).on("click", ".Func9:not('.noevent')", function(e) {
      openAf291x("3");
    });
    //　F10 
    $(document).on("click", ".Func10:not('.noevent')", function(e) {
    });
    //　F11 
    $(document).on("click", ".Func11:not('.noevent')", function(e) {
    });
    //　F12 メニュー/戻る
    $(document).on("click", ".Func12:not('.noevent')", function(e) {
      {if $header.p_title eq ""}
        $('.btn-close').trigger('click');
      {else}
        window.close();
      {/if}
    });

    //操作可/不可ボタン
    clearDetail();
    doHeaderEnable("H");

    {*在庫一覧から開かれたら、そのまま表示*}
    {if $header.p_title neq "" && $header.ijan neq ""}
      dspDetail();
    {/if}

    //=== header ===


    //MENUボタン===============================
    $(document).on("click", ".btn-search-before", function(e) {

      var errflg = false;
      var frm = $(this).closest(".contents").find(".header");
      common.clearFormError(frm);

      if (stringUtil.isEmpty(common.getValue(frm.find(".jan")))) {
        errflg = true;
        common.addError( frm.find(".jan"), "入力して下さい。", null, true);
      }

      if(errflg) {
        alert("エラーがあります");
      } else {
        dspDetail();
      }
    });

    //=== header ===
    $(document).on("focus", "#headerTop .dummy", function(e) {
      $("#topmenu").find(".Func2").focus();
    });


    //=== body ===

    //====明細行動作======

    //=== footer ===

    // 初回フォーカス

  });

</script>
