'use strict'; var sProgramId = getProgramId(), sEditPrgId = getEditPrgId(), oGrid = null, fnPageInit = function () { var oForm = $('#form_main'), oBaseQueryPm = { pageIndex: 1, pageSize: parent.SysSet.GridRecords || 10, sortField: '', sortOrder: 'asc' }, /** * 獲取資料 * @param {Object} args 查詢參數 * @return {Object} Ajax 物件 */ fnGetPro = function (args) { var oQueryPm = getFormSerialize(oForm); $.extend(oQueryPm, oBaseQueryPm, args); oBaseQueryPm.pageIndex = oQueryPm.pageIndex; return g_api.ConnectLite(sProgramId, args.Excel ? 'GetExcel' : 'QueryPage', oQueryPm, function (res) { if (args.Excel) {//匯出 var oRes = res.DATA.rel; DownLoadFile(oRes); layer.close(args.Index); } }); }, /** * 打開要匯出的pop選擇匯出類別 */ fnOpenPopToExcel = function () { layer.open({ type: 1, title: i18next.t('common.DownLoadDocuments'),// ╠common.DownLoadDocuments⇒下載文檔╣ area: ['200px', '420px'],//寬度 shade: 0.75,//遮罩 shadeClose: true, btn: [i18next.t('common.Cancel')],// ╠common.Cancel⇒取消╣ content: '
\

\

\

\

\

\

\
',//╠common.BasicInformation⇒基本資料╣╠common.BusinessTrackingSchedule⇒業務追蹤進度表╣╠common.AdvanceAndRetreatWorkSheet⇒進退場工作表╣╠common.ReturnRecord⇒退運記錄表╣╠common.AreasList⇒退押款清冊╣╠common.BondedSheet⇒保稅工作表╣ success: function (layero, idx) { $('.pop-box :button').click(function () { var sToExcelType = this.id; fnGetPro({ Excel: true, ExcelType: sToExcelType, Index: idx }); }); transLang(layero); } }); }, /** * ToolBar 按鈕事件 function * @param {Object}inst 按鈕物件對象 * @param {Object} e 事件對象 */ fnButtonHandler = function (inst, e) { var sId = inst.id; switch (sId) { case "Toolbar_Qry": var iNum = $('#PerPageNum').val(); oGrid.pageSize = iNum === '' ? parent.SysSet.GridRecords || 10 : iNum; cacheQueryCondition(); oGrid.openPage(window.bToFirstPage ? 1 : oBaseQueryPm.pageIndex); break; case "Toolbar_Save": fnSave('add'); break; case "Toolbar_ReAdd": break; case "Toolbar_Clear": clearPageVal(); break; case "Toolbar_Leave": break; case "Toolbar_Add": parent.openPageTab(sEditPrgId, '?Action=Add'); break; case "Toolbar_Upd": break; case "Toolbar_Copy": break; case "Toolbar_Del": // ╠message.ConfirmToDelete⇒確定要刪除嗎 ?╣ ╠common.Tips⇒提示╣ break; case "Toolbar_Exp": if (oGrid.data.length === 0) { showMsg(i18next.t("message.NoDataExport"));// ╠message.NoDataExport⇒沒有資料匯出╣ return false; } fnOpenPopToExcel(); break; default: alert("No handle '" + sId + "'"); break; } }, /** * 設置Grid行樣式 * @param {String} val 欄位值 * @param {Object} item 欄位值 * @return {String} 新字串 */ setGridRow = function (val, item) { var sVal = val || ''; if (item.IsAlert === 'Y') { sVal = '' + sVal + ''; } return sVal }, /** * 初始化 function */ init = function () { if (parent.OrgID !== 'TE') { $('.dept-box').hide(); } commonInit({ PrgId: sProgramId, ButtonHandler: fnButtonHandler, SearchBar: true }); //$.timepicker.dateRange($('#ExhibitionDateStart'), $('#ExhibitionDateEnd'), // { // minInterval: (1000 * 60 * 60 * 24 * 1), // 1 days // changeYear: true, // changeMonth: true // } //); $.whenArray([ fnSetDeptDrop($('#DepartmentID'), parent.SysSet.SearchDeptList), fnSetUserDrop([ { Select: $('#ResponsiblePerson'), Select2: true, ShowId: true, ServiceCode: parent.SysSet.IMCode } ]), fnSetArgDrop([ { ArgClassID: 'DeclClass', Select: $('#DeclarationClass'), ShowId: true } ])]) .done(function () { reSetQueryPm(sProgramId); var sCode = parent.UserInfo.ServiceCode; if (sCode && parent.SysSet.IMCode.indexOf(sCode) > -1 && parent.UserInfo.roles.indexOf('CDD') === -1) { $('#ResponsiblePerson').val(parent.UserInfo.MemberID); } var iHeight = $('body').height() - $('.page-title').height() - $('#searchbar').height() - 87; $("#jsGrid").jsGrid({ width: "100%", height: iHeight + "px", autoload: true, pageLoading: true, sorting: true, paging: true, pageIndex: window.bToFirstPage ? 1 : window.QueryPageidx || 1, pageSize: parent.SysSet.GridRecords || 10, pageButtonCount: parent.SysSet.GridPages || 15, pagePrevText: "<", pageNextText: ">", pageFirstText: "<<", pageLastText: ">>", headerClick: function () { }, onPageChanged: function (args) { cacheQueryCondition(args.pageIndex); }, rowClick: function (args) { if ((args.item.IsVoid === 'Y' && parent.UserInfo.IsManager) || args.item.IsVoid === 'N') { if (navigator.userAgent.match(/mobile/i)) { goToEdit(sEditPrgId, '?Action=Upd&ImportBillNO=' + args.item.ImportBillNO); } } else { showMsg(i18next.t("message.NoPermission")); // ╠message.NoPermission⇒沒有權限╣ } }, rowDoubleClick: function (args) { if ((args.item.IsVoid === 'Y' && parent.UserInfo.IsManager) || args.item.IsVoid === 'N') { parent.openPageTab(sEditPrgId, '?Action=Upd&ImportBillNO=' + args.item.ImportBillNO); } else { showMsg(i18next.t("message.NoPermission")); // ╠message.NoPermission⇒沒有權限╣ } }, rowMouseDown: function (args) { //oTimeOut = setTimeout(function () { //}, 1000); }, rowMouseUp: function (args) { //clearTimeout(oTimeOut); }, rowMouseUut: function (args) { //clearTimeout(oTimeOut); }, rowClass: function (item) { var sClass = ''; if (item.IsVoid === 'Y') { sClass = 'data-void'; } return sClass; }, fields: [ { name: "RowIndex", title: 'common.RowNumber', type: "text", width: 40, align: "center", sorting: false, itemTemplate: function (val, item) { var sVal = setGridRow(val, item); return sVal; } }, { name: "RefNumber", title: 'ExhibitionImport_Upd.RefNumber', type: "text", width: 90, itemTemplate: function (val, item) { var sVal = setGridRow(val, item); return sVal; } }, { name: "ImportBillName", title: 'ExhibitionImport_Upd.ImportBillName', type: "text", width: 140, itemTemplate: function (val, item) { var sVal = setGridRow(val, item); return sVal; } }, { name: "SupplierCName", title: 'ExhibitionImport_Upd.Supplier', type: "text", width: 120, itemTemplate: function (val, item) { var sVal = setGridRow(val, item); return sVal; } }, { name: "AgentName", title: 'ExhibitionImport_Upd.Agent', type: "text", width: 120, itemTemplate: function (val, item) { var sVal = setGridRow(val, item); return sVal; } }, { name: "ResponsiblePersonName", title: 'ExhibitionImport_Upd.ResponsiblePerson', type: "text", width: 60, itemTemplate: function (val, item) { var sVal = setGridRow(val, item); return sVal; } }, { name: "BillLadNO", title: 'ExhibitionImport_Upd.BillLadNO', type: "text", width: 120, itemTemplate: function (val, item) { var sVal = setGridRow(val, item); return sVal; } }, { name: "REF", title: 'ExhibitionImport_Upd.REF', type: "text", width: 60, itemTemplate: function (val, item) { var sVal = setGridRow(val, item); return sVal; } }, {// ╠common.Flow_Status⇒貨物狀態╣ name: "Flow_Status", title: 'common.Flow_Status', type: "text", width: 70, itemTemplate: function (val, item) { var sValShow = '', saVal = (val || '').split('-'); if (saVal.length > 1) { var oImport = { '1': '已收文件', '2': '貨物抵達', '3': '報關作業', '4': '貨物放行', '5': '轉至展館倉庫', '6': '已送達' }, oReImport = { '1': '文件確認', '2': '報關作業', '3': '貨物放行', '4': '回運中', '5': '抵達目的地', '6': '已送達' }; if (saVal[0] === 'Import') { sValShow = i18next.t("common.ExhibitionImport_Qry") + '-' + oImport[saVal[1]];// ╠common.ExhibitionImport_Qry⇒進口╣ } else { var saReImports = $.parseJSON(item.ReImports); if (saReImports.length > 0) { $.each(saReImports, function (idx, reimport) { var iLen = idx + 1, sFlowStatus = ''; if (reimport.ReImport.Sign && reimport.ReImport.Sign.Checked) { sFlowStatus = '6'; } else if (reimport.ReImport.ReachDestination && reimport.ReImport.ReachDestination.Checked) { sFlowStatus = '5'; } else if (reimport.ReImport.HuiYun && reimport.ReImport.HuiYun.Checked) { sFlowStatus = '4'; } else if (reimport.ReImport.ReCargoRelease && reimport.ReImport.ReCargoRelease.Checked) { sFlowStatus = '3'; } else if (reimport.ReImport.ReCustomsDeclaration && reimport.ReImport.ReCustomsDeclaration.Checked) { sFlowStatus = '2'; } else if (reimport.ReImport.FileValidation && reimport.ReImport.FileValidation.Checked) { sFlowStatus = '1'; } if (sFlowStatus) { sValShow += i18next.t("common.Returns") + iLen + '-' + oReImport[sFlowStatus] + '
';// ╠common.Returns⇒退運╣ } }); } } } sValShow = setGridRow(sValShow, item); return sValShow; } }, {// ╠ExhibitionImport_Upd.ExhibitionDateStart⇒活動日期起╣ name: "ExhibitionDateStart", title: 'ExhibitionImport_Upd.ExhibitionDateStart', type: "text", width: 60, itemTemplate: function (val, item) { var sVal = setGridRow(newDate(val, 'date', true), item); return sVal; } }, {// ╠ExhibitionImport_Upd.IsSendMail⇒查詢碼寄送狀態╣ name: "IsSendMail", title: 'ExhibitionImport_Upd.IsSendMail', type: "text", align: "center", width: 70, itemTemplate: function (val, item) { return val === 'Y' ? i18next.t('common.HasMail') : i18next.t('common.NotMail');// ╠common.HasMail⇒已寄送╣ ╠common.NotMail⇒未寄送╣ } }, {// ╠common.Bill_Status⇒帳單狀態╣ type: "control", title: 'common.Bill_Status', itemTemplate: function (val, item) { var iTips = 0, sTipsHtml = '
' + i18next.t("common.Bill_Status") + '
',// ╠common.Bill_Status⇒帳單狀態╣ saBills = $.parseJSON(!item.Bills ? '[]' : item.Bills), saReturnBills = $.parseJSON(!item.ReturnBills ? '[]' : item.ReturnBills), saReBills = [], oOption = { btnAlign: 'c', time: 600000 //一個小時(如果不配置,默认是3秒) }, bOK = true, oTips = $('', { 'class': 'glyphicon glyphicon-info-sign', 'aria-hidden': true }).on({ click: function () { oOption.btn = [i18next.t("common.Close")];// ╠common.Close⇒關閉╣ layer.msg(sTipsHtml, oOption); }, mouseenter: function (event) { delete oOption.btn; iTips = layer.msg(sTipsHtml, oOption); }, mouseleave: function (event) { layer.close(iTips); } }); if (saReturnBills.length > 0) { $.each(saReturnBills, function (idx, _return) { if (_return.Bills && _return.Bills.length > 0) { $.each(_return.Bills, function (idx, bill) { saReBills.push(bill); }); } }); } if (saBills.length > 0 || saReBills.length > 0) { sTipsHtml += ''; if (saBills.length + saReBills.length > 15) { oOption.area = ['340px', '500px']; } } else { sTipsHtml = '
' + i18next.t("common.NOBills") + '
';// ╠common.NOBills⇒還沒有帳單╣ bOK = false; } if (bOK) { oTips.css('color', 'blue'); } else { oTips.css('color', 'red'); } return oTips; } } //{ // name: "ExhibitionDateEnd", title: 'ExhibitionImport_Upd.ExhibitionDateEnd', type: "text", width: 70, itemTemplate: function (val, item) { // var sVal = setGridRow(newDate(val, 'date', true), item); // return sVal; // } //} ], controller: { loadData: function (args) { return fnGetPro(args); } }, onInit: function (args) { oGrid = args.grid; } }); if (parent.UserInfo.roles.indexOf('Business') > -1 || parent.UserInfo.roles.indexOf('CDD') > -1) {//報關||業務 $('.slide-box').click(); } }); }; init(); }; require(['base', 'select2', 'jsgrid', 'util'], fnPageInit);