"use strict"; var LOGINURL = "/user/login.html"; var YJYDLOGINURL = "/app/whepi/user/login.html"; var CURRENTROLEID = 0; var timer1 = null; function demoApi(url) { return 'http://localhost:8087/api' + url; } function fmtDate(javaTimestamp) { if (!javaTimestamp) { return ""; } var timestamp = moment(new Date(parseInt(javaTimestamp))); return timestamp.format("YYYY-MM-DD HH:mm:ss"); } // 判断页面操作权限,返回值false取消按钮,返回true显示按钮 function getOperationType(menuCode) { var type = false; $.yvan.ajax({ url: api('/sys/sysRole/getOperationType?menuCode=' + menuCode), method: 'get', async: false, success: function (data) { type = data.data; } }); return type; } // 户档tab页面的查询 当前客户信息 function queryJoName(joId) { var type = null; $.yvan.ajax({ url: api('/jdOrg/query/getjoName'), method: 'get', async: false, data: {joId: joId}, success: function (data) { console.log(data.data) type = data.data.joName; } }); return type; } // 判断value是数组,还是字符串,是数组就拼接成字符串,是字符串就直接 function getFromJoin(value) { var values = ""; if (value instanceof Array) { for (var i = 0; i < value.length; i++) { values += value[i] + ","; } values = values.substr(0, values.length - 1); } else { values = value; } return values; } (function ($) { function ajaxBizError(body) { if (body.msg === 'ValidateError') { var sb = []; for (var v in body.data) { sb.push(body.data[v]); } $.yvan.error(sb.join(', ')); return; } if (body.msg === 'DuplicateKeyException') { $.yvan.error("数据重复,请检查编号是否已存在!"); return; } if (body.data && body.data.errorType === 'BIZ_ERROR') { $.yvan.info(body.msg); return; } else if (body.data && body.data.errorType === 'RUNTIME_ERROR') { $.yvan.error(body.msg); return; } $.yvan.error(body.msg); } function ajaxException(event, xhr, options, exc) { if (event.status === 403) { top.window.location.href = jumpApi(LOGINURL); return; } if (event.status === 401) { $.yvan.error("无权限!"); return; } if (event.status === 404) { $.yvan.error("资源不存在:" + this.url); return; } if (options.message) { $.yvan.error(options.message); return; } if (event.responseJSON) { ajaxBizError(event.responseJSON); return; } $.yvan.error("无法连接到服务器, 或服务器异常"); } $.yvan = $.yvan || {}; $.extend($.yvan, { ajaxException: ajaxException, ajaxBizError: ajaxBizError, ts: function (cellvalue) { var date = new Date(); if (cellvalue == null || cellvalue == undefined || cellvalue == "") { return ""; } date.setTime(cellvalue); var y = date.getFullYear(); var m = date.getMonth() + 1; m = m < 10 ? ('0' + m) : m; var d = date.getDate(); d = d < 10 ? ('0' + d) : d; var h = date.getHours(); h = h < 10 ? ('0' + h) : h; var minute = date.getMinutes(); var second = date.getSeconds(); minute = minute < 10 ? ('0' + minute) : minute; second = second < 10 ? ('0' + second) : second; //如果是1900-1-1,就空 // if (y == '1900' && m == '01' && d == '01') // return ""; if (y <= 1900) return ""; if (y >= 2199) return ""; return y + '-' + m + '-' + d + ' ' + h + ':' + minute + ':' + second; }, tsD: function (cellvalue) { var date = new Date(); if (cellvalue == null || cellvalue == undefined || cellvalue == "") { return ""; } date.setTime(cellvalue); var y = date.getFullYear(); var m = date.getMonth() + 1; m = m < 10 ? ('0' + m) : m; var d = date.getDate(); d = d < 10 ? ('0' + d) : d; var h = date.getHours(); h = h < 10 ? ('0' + h) : h; var minute = date.getMinutes(); var second = date.getSeconds(); minute = minute < 10 ? ('0' + minute) : minute; second = second < 10 ? ('0' + second) : second; //如果是1900-1-1,就空 // if (y == '1900' && m == '01' && d == '01') // return ""; if (y <= 1900) return ""; if (y >= 2199) return ""; return y + '-' + m + '-' + d + ' ' + h + ':' + minute; }, taskStatusMo: function (cellvalue) { /*if (cellvalue == null || cellvalue == undefined || cellvalue == "") { return ""; }*/ if (cellvalue == 2) { return '已完成'.fontcolor('green'); } else if (cellvalue == 1) { return '进行中'; } else if (cellvalue == 0 || cellvalue == null) { return '未开始'.fontcolor('red'); } }, tsymd: function (cellvalue) { var date = new Date(); if (cellvalue == null || cellvalue == undefined || cellvalue == "") { return ""; } date.setTime(cellvalue); var y = date.getFullYear(); var m = date.getMonth() + 1; m = m < 10 ? ('0' + m) : m; var d = date.getDate(); d = d < 10 ? ('0' + d) : d; //如果是1900-1-1,就空 // if (y == '1900' && m == '01' && d == '01') // return ""; if (y <= 1900) return ""; if (y >= 2199) return ""; return y + '-' + m + '-' + d; }, download: function (opts) { function createObjectURL(object) { return (window.URL) ? window.URL.createObjectURL(object) : window.webkitURL.createObjectURL(object); } var formData = new FormData(); //兼容传json if (opts.data) { formData = opts.data; } var xhr = new XMLHttpRequest(); xhr.open(opts.method || 'post', opts.url); xhr.responseType = 'blob'; xhr.setRequestHeader("Authorization", $.cookie('auth')); //兼容传json if (opts.data) { xhr.setRequestHeader("Content-Type", "application/json"); } xhr.onload = function (e) { if (this.status === 200) { var blob = this.response; var filename = opts.fileName || 'file'; if (window.navigator.msSaveOrOpenBlob) { navigator.msSaveBlob(blob, filename); } else { var a = document.createElement('a'); var url = createObjectURL(blob); a.href = url; a.download = filename; $("body").append(a); a.click(); $(a).remove(); window.URL.revokeObjectURL(url); } } }; xhr.send(formData); return xhr; }, //系统 ajax 的全局方法 ajax: function (opts) { if (!opts.url) { return; } var success = opts.success; var error = opts.error; var beforeSend = opts.beforeSend; var complete = opts.complete; return $.ajax($.extend(opts, { dataType: 'json', crossDomain: true, beforeSend: function (xhr) { xhr.setRequestHeader("Authorization", $.cookie('auth')); if (beforeSend) { beforeSend.apply(this, arguments); } }, success: function (data, textStatus, res) { if (data.success) { if ($.type(opts['dataProcess']) === 'function') { opts['dataProcess'].apply(this, arguments); } var auth = res.getResponseHeader("Authorization"); if (auth && auth.length > 0) { if (auth === 'remove') { $.cookie('auth', null); } else { $.cookie('auth', auth, {path: '/'}); } } if (success) { success(data, textStatus, res); } return; } if (error) { error.apply(this, arguments); } ajaxBizError(data); }, error: function (event, xhr, options, exc) { if (event.status === 403 && opts.isRetry !== true && event.responseJSON.hasOwnProperty("data") && event.responseJSON.data.hasOwnProperty("user_id")) { //当前登录已失效,并且可以重新登录后重试 opts.isRetry = true; return; } if (error) { error.apply(this, arguments); } ajaxException.apply(this, arguments); }, complete: function () { if (complete) { complete.apply(this, arguments); } } })); }, //取业务字典的资源位置 // bizDict: $.yvan.dictLoadDefine(function (data) { // return { // url: api('/sys/sysDict/getByKey'), // data: data, // type: 'get' // }; // }), //取系统字典的资源位置 // sysDict: $.yvan.dictLoadDefine(function (data) { // return { // url: api('/sys/sysDict/getByKey'), // data: data, // type: 'get' // }; // }), }); })(jQuery); //------------------------------------- 常量 ------------------------------------- //业务类型:标准文件 var BUSI_TYPE_BZBM = 100; //编码输入类型:1文本、2整数、3小数、4字典 var VAL_TYPE_1 = 1; var VAL_TYPE_2 = 2; var VAL_TYPE_3 = 3; var VAL_TYPE_4 = 4; //201技术标准、202图号、 203规格型号、 204低值易耗 //标准类型 var GB_TYPE_201 = 201; var GB_TYPE_202 = 202; var GB_TYPE_203 = 203; var GB_TYPE_204 = 204; //属性分类:101按编码分类;102按批次分类;103按检验分类 //编码属性分类 var ATTR_TYPE_101 = 101; var ATTR_TYPE_102 = 102; var ATTR_TYPE_103 = 103; //批次图片类型,301厂家合格证;302厂家履历本;303物资实物图; var BATCH_IMG_TYPE_301 = 301; var BATCH_IMG_TYPE_302 = 302; var BATCH_IMG_TYPE_303 = 303; //角色CODE: //WZ02车间技术员、WZ03技术主管 var ROLE_CODE_车间技术员 = "WZ02"; var ROLE_CODE_技术主管 = "WZ03"; var ROLE_CODE_技术中心领导 = "WZ04"; var ROLE_CODE_采购主管 = "WZ05"; var ROLE_CODE_采购领导 = "WZ06"; var ROLE_CODE_采购员 = "WZ08"; //检验分类业务类型【字典】 // 1检验、2仓储、3技术、4采购 var MATC_BUSI_检验 = 1; var MATC_BUSI_仓储 = 2; var MATC_BUSI_技术 = 3; var MATC_BUSI_采购 = 4; //三期类型 var QCST_EXP_无 = "0"; var QCST_EXP_油封 = "1"; var QCST_EXP_复验 = "2"; //工艺规程类型 1附录A、2机型必换件清单、3技术通知 var TECH_TYPE_附录A = 1; var TECH_TYPE_必换件 = 2; var TECH_TYPE_技术通知 = 3; var TECH_TYPE_临时 = 4; var TECH_TYPE_工卡 = 5; //部位类型 1整机、2部附件 var PART_TYPE_整机 = 1; var PART_TYPE_部附件 = 2; //仓库类型 ROOM_TYPE var ROOM_TYPE_CK = 1; var ROOM_TYPE_SFS = 2; var ROOM_TYPE_PTJ = 3; var ROOM_TYPE_FYZX = 4; var ROOM_TYPE_BM = 5; var ROOM_TYPE_YFJ = 6; //货位信息 WMS_WH_CELL //workArea 1收货区、2发货区、3待检区、4不合格品区域、5货架区、6工作区 var WORK_AREA_收货区 = 1; var WORK_AREA_发货区 = 2; var WORK_AREA_待检区 = 3; var WORK_AREA_不合格区 = 4; var WORK_AREA_货架区 = 5; var WORK_AREA_工作区 = 6; //检验项类型TEST_TYPE:1入库检验、2定期试验、3检验方式、4检验方法【MAT_BATCH_QCST_ITEM】 var TEST_TYPE_入库检验 = 1; var TEST_TYPE_定期试验 = 2; var TEST_TYPE_检验方式 = 3; var TEST_TYPE_检验方法 = 4; //物资大类MAT_CATALOG:1器材、2物资、3消耗物品 var MAT_TYPE_器材 = 1; var MAT_TYPE_物料 = 2; var MAT_TYPE_低值易耗 = 3; //物资分类:器材、物资、消耗物品 var MAT_TYPE_NAME_器材 = "器材"; var MAT_TYPE_NAME_物资 = "物资"; var MAT_TYPE_NAME_消耗物品 = "消耗物品"; //盘存类型 var INV_TYPE_抽查 = 1; var INV_TYPE_普查 = 2; var INV_TYPE_期初 = 3; //到货通知单入库类型:1外购、2自制、3退货、4跨区转库 var IN_TYPE_外购 = 1; var IN_TYPE_自制 = 2; var IN_TYPE_退货 = 3; var IN_TYPE_跨区转库 = 4; //供应商类型 var CORP_TYPE_供应商 = 1; var CORP_TYPE_代理商 = 2; var CORP_TYPE_物流公司 = 3; //物资合并,任务步骤,草稿、发布、主管审核、领导审核 var STEP_CODE_HBSQ_CG = "HBSQ_CG"; var STEP_CODE_HBSQ_FB = "HBSQ_FB"; var STEP_CODE_HBSH_SH = "HBSH_SH"; var STEP_CODE_HBSH_LDSH = "HBSH_LDSH"; //库区CODE,对应批次表 var FARM_CODE_WH = 1; var FARM_CODE_YL = 2; var FARM_CODE_DY = 3; var FARM_CODE_WH_NAME = "金银湖"; var FARM_CODE_YL_NAME = "阳逻"; var FARM_CODE_DY_NAME = "当阳"; //------------------------------------- 独立方法 ------------------------------------- //调CS客户端的方法拍照(上传批次图片) function callCsScanHGZ(batchId, matType) { if (typeof cs == "undefined") { alert("请启动客户端程序来调用"); return; } cs.HdScanBatch(batchId + ',' + matType); } //调图片拍照功能,会回调创建批次方法 function callCsScanCommon(context, busiId, inType, callBack) { var p = {busiId: busiId, busiType: inType}; Camera.takePhotoAndUpload('/src/file/upload', JSON.stringify(p), function (data) { //回调刷新列表之类的 callBack(); }, 100); } //调图片拍照功能,会回调创建批次方法,并新增批次(仅限于批次合格证拍照) function callCsScan(context, batchId, matType, busiType, farmId, callBack) { var p = {busiId: batchId, busiType: busiType}; Camera.takePhotoAndUpload('/src/file/upload', JSON.stringify(p), function (data) { //回调,新增批次 callAddBatch(context, batchId, matType, farmId, callBack); }, 100); } //添加批次方法 function callAddBatch(context, _batchId, _matType, _farmId, callBack) { //更新附件数量,并新增物资 $.yvan.ajax({ method: 'post', url: apiMat('/mat/matBatch/updateBatchFileNumIsAdd'), //自行替换此参数 data: { farmId: _farmId, batchId: _batchId, //自行替换此参数 hisStatus: 0, //必须的参数,默认0历史无库存 matType: _matType, //物资大类 isAdd: true }, success: function (data) { // $.yvan.msg(data.msg); if (isNotNull(callBack)) { callBack(); } if ($.type(context.confirm) === 'function') { context.confirm(); } }, error: function (data) { } }); } // //调CS客户端的方法拍照(上传收货单签收的图片) // function callCsScanWmsIn(busiId, inType) { // if (typeof cs == "undefined") { // alert("请启动客户端程序来调用"); // return; // } // cs.callCsScanWmsIn(busiId + ',' + inType); // }1 //调CS客户端的方法打印油封单 function callCsPrintYFD(batchId) { if (typeof cs == "undefined") { alert("请启动客户端程序来调用"); return; } cs.HdPrintYFD(batchId); } //调CS客户端的方法打印合格证标签 function callCsPrintHGZ(printInfo) { if (typeof cs == "undefined") { alert("请启动客户端程序来调用"); return; } if (printInfo == null || printInfo == '') { alert("合格证信息为空"); return; } cs.HdPrintHGZ(printInfo); } // 获取编码类型 // 暂物资管理列表使用-判断登陆角色 function getCodeType(isFull) { var _items = []; if (isNotNullOrEmpty(isFull) && isFull) { // true _items.push({ id: '', text: '全部' }); } // console.log(App.currentRoleCode); if (isNotNullOrEmpty(App.currentRoleCode)) { if (ROLE_CODE_采购主管 == App.currentRoleCode || ROLE_CODE_采购领导 == App.currentRoleCode) { _items.push({ id: GB_TYPE_204, text: '消耗物品' }); return _items; } // else if (ROLE_CODE_技术主管 == App.currentRoleCode) { // _items.push({ // id: GB_TYPE_201, // text: '技术标准' // }); // _items.push({ // id: GB_TYPE_203, // text: '图号型号' // }); // return _items; // } } _items.push({ id: GB_TYPE_201, text: '技术标准' }); _items.push({ id: GB_TYPE_203, text: '图号型号' }); _items.push({ id: GB_TYPE_204, text: '消耗物品' }); return _items; } //判断是否为null、undefined、"" function isNotNullOrEmpty(str) { if (str != undefined && str != null && $.trim(str) != "") { return true; } return false; } //判断是否为null、undefined、""、"0" function isNotNullOrEmptyOrZero(str) { if (str != undefined && str != null && $.trim(str) != "" && $.trim(str) != "0") { return true; } return false; } //判断是否为null、undefined function isNotNull(obj) { if (obj != undefined && obj != null) { return true; } return false; } //清空Grid的数据 function clearGrid($grid) { if (isNotNull($grid)) { $grid.jqGrid("clearGridData"); } } //格式化float function formatFloat(value) { if (!isNotNullOrEmpty(value) || isNaN(value)) return 0; return parseFloat(value); } //绑定下拉框1 function getComboData(aurl, aid, atext, awapper) { var _datas = []; $.yvan.ajax({ url: api(aurl), data: {}, method: 'post', async: false, success: function (data) { if (data.data != null && data.data != undefined) { for (var i = 0; i < data.data.length; i++) { var text = ""; text = eval("data.data[i]." + atext); var text2 = ""; if (awapper) { text2 = eval("data.data[i]." + awapper); text = text + "(" + text2 + ")"; } _datas.push({ "id": eval("data.data[i]." + aid), "text": text }); } } } }); return _datas; } //绑定下拉框,部门独享 function getComboDataDeptName(aurl) { var _datas = []; // _datas.push({ // id: '', // text: '全部', // }); _datas.push({ id: '-1', text: '无部门', }); $.yvan.ajax({ url: api(aurl), data: {}, method: 'post', async: false, success: function (data) { if (data.data != null && data.data != undefined) { for (var i = 0; i < data.data.length; i++) { var id = ""; var text = ""; text = eval("data.data[i]"); id = text; _datas.push({ "id": id, "text": text }); } } } }); return _datas; } function getComboDataUserCheJian() { return getComboData('/hr/user/queryUserCheJian', 'userId', 'name'); } //期初仓库 function getComboDataRoomHis() { return getComboData('/wms/wmsWhRoom/queryRoomGroupByHis', 'roomId', 'roomName'); } function getComboDataBasCorp() { return getComboData('/bas/corp/queryWidget', 'corpId', 'corpName'); } //org_id>0 function getComboDataBasCorpNoOrg() { return getComboData('/bas/corp/queryWidgetNoOrg', 'corpId', 'corpName'); } //org_id=0 function getComboDataBasCorpOrg() { return getComboData('/bas/corp/queryWidgetOrg', 'corpId', 'corpName'); } //org_id=0 function getComboDataBasCorpAll() { return getComboData('/bas/corp/queryWidgetAll', 'corpId', 'corpName'); } function getComboDataWhFarm() { return getComboData('/wms/whFarm/queryAll', 'farmId', 'farmName'); } function getComboDataMatInfo() { return getComboData('/mat/matInfo/query', 'matId', 'matName'); } function getComboDataHrUser() { return getComboData('/hr/user/queryWidget', 'userId', 'name'); } function getComboDataWhRoom() { return getComboData('/wms/whRoom/queryWidget', 'roomId', 'roomName'); } function getComboDataWhRoomType1() { return getComboData('/wms/whRoom/queryRoomType1', 'roomId', 'roomName'); } function getComboDataWhRoomType2() { return getComboData('/wms/whRoom/queryRoomType2', 'roomId', 'roomName'); } function getComboDataWmsWhUserRoleCC05() { return getComboData('/hr/hrTeam/queryWidgetCC05', 'userId', 'name'/*, 'roomName'*/); } function getComboDataWmsWhUserRoleAll() { return getComboData('/hr/hrTeam/queryWidgetUserAll', 'userId', 'name'/*, 'roomName'*/); } function getComboDataWmsWhUserRoleCC06() { return getComboData('/hr/hrTeam/queryWidgetCC06', 'userId', 'name'/*, 'roomName'*/); } function getComboDataWmsWhUserRoleYFY() { return getComboData('/hr/hrTeam/queryWidgetYFY', 'userId', 'name'/*, 'roomName'*/); } function getComboDataWmsWhUserRoleCGY() { return getComboData('/hr/hrTeam/queryWidgetCGY', 'userId', 'name'/*, 'roomName'*/); } function getComboDataWmsWhUserRoleSFY() { return getComboData('/hr/hrTeam/queryWidgetSFY', 'userId', 'name'/*, 'roomName'*/); } function getComboDataSysUnit() { return getComboData('/sys/sysUnit/query', 'unitId', 'unitName'); } function getComboDataPmsPgh() { return getComboData('/pms/pmsPgh/queryWidget', 'pghId', 'pghName'); } //obj对象,启用/停用 function setPubStatusMsg(obj) { var delMsgData = obj.name == undefined || obj.name == null || obj.name == "" ? "" : "[" + obj.name + "]"; var msg = ""; var statusCN1 = "启用"; var statusCN2 = "停用"; var statusCN3 = "草稿"; var status = 2; //status整体状态:-1停用、1草稿、2发布 if (-1 == obj.status) { msg = ("该行数据已" + statusCN2 + "
确定" + statusCN1 + delMsgData + "吗?"); status = 2; } else if (2 == obj.status) { msg = ("该行数据已" + statusCN1 + "
确定" + statusCN2 + delMsgData + "吗?"); status = -1; } else if (1 == obj.status) { msg = ("该行数据已" + statusCN3 + "
确定" + statusCN1 + delMsgData + "吗?"); status = 2; } obj.msg = msg; obj.rtnStatus = status; return obj; } //obj对象,启用/停用 function setStatusMsg(obj) { if (obj.isTree == undefined || obj.isTree == null) obj.isTree = 0; var delMsgData = obj.name == undefined || obj.name == null || obj.name == "" ? "" : "[" + obj.name + "]"; var delMsgTree1 = obj.isTree == 0 ? "" : "及其子节点"; var delMsgTree2 = obj.isTree == 0 ? "" : obj.treeUp == 0 ? "" : "及其父节点"; var msg = ""; var statusCN1 = "启用"; var statusCN2 = "停用"; if (0 == obj.status) { statusCN1 = "发布"; } var status = 1; //status整体状态:-2删除、-1停用、0草稿、1发布 if (-1 == obj.status) { msg = ("该行数据已" + statusCN2 + "
确定" + statusCN1 + delMsgData + delMsgTree1 + "吗?"); status = 1; } else if (1 == obj.status) { msg = ("该行数据已" + statusCN1 + "
确定" + statusCN2 + delMsgData + delMsgTree1 + "吗?"); status = -1; } if (0 == obj.status && 1 == obj.tostatus) { msg = ("确定" + statusCN1 + delMsgData + delMsgTree1 + "吗?"); status = 1; } statusCN2 = "删除"; if (0 == obj.status && -2 == obj.tostatus) { msg = ("确定" + statusCN2 + delMsgData + delMsgTree1 + "吗?"); status = -2; } obj.msg = msg; obj.rtnStatus = status; return obj; } //通用排序 //name,参数 //list,id数组 function MoveSort(name, ids, context) { var data = { "ids": "", "name": name }; for (var i = 0; i < ids.length; i++) { data.ids += ids[i] + ","; } data.ids = data.ids.substr(0, data.ids.length - 1); if (data.ids == "") { return; } $.yvan.ajax({ url: api('/core/app/updateCoreSort'), method: 'post', data: data, success: function () { if (isNotNull(context)) { if ($.type(context.confirm) === 'function') { context.confirm(); } } $.yvan.msg('操作成功'); } }); } //将0转换为空值'' function rtnEmpty(cellvalue) { if (cellvalue == null || cellvalue == undefined || cellvalue == 0) return ''; return cellvalue; } //将0转换为'-' function rtnEmptyG(cellvalue) { if (cellvalue == null || cellvalue == undefined || cellvalue == 0) return '-'; return cellvalue; } //将0转换为'-' function rtnEmptyGG(cellvalue) { if (cellvalue == null || cellvalue == undefined || cellvalue == 0) return '--'; return cellvalue; } //将null、空转为0 function rtnZero(cellvalue) { if (cellvalue == null || cellvalue == undefined || cellvalue == "" || cellvalue.length == 0) return 0; return cellvalue; } //将null、转换成空 function rtnNull(cellvalue) { if (cellvalue == null || cellvalue == undefined || cellvalue.length == 0 || cellvalue == "") return ''; return cellvalue; } // 轮询新的任务 function timerGetNewTaskTag(func, time) { if (timer1) { return; } //重复执行某个方法 timer1 = window.setInterval(func, time); } function stopTimer() { if (timer1) { //去掉定时器的方法 window.clearInterval(timer1); timer1 = null; } } //将字典的id、text,加上"全部"后,返回list //type=undefined or null,带上"全部" function getDictList(dictName, type) { var _datas = []; if (!isNotNull(type)) { _datas.push({ "id": '', "text": "全部" }); } var list = $.yvan.bizDict(dictName).combo(); if (isNotNull(list)) { for (var i = 0; i < list.length; i++) { _datas.push({ "id": list[i].id, "text": list[i].text }); } } return _datas; } //查找字典中对应id的name,找不到返回空 function getDictName(dictName, id) { if (!isNotNull(id)) return ""; var list = $.yvan.bizDict(dictName).combo(); if (list != undefined && list != null) { for (var i = 0; i < list.length; i++) { if (id == list[i].id) { return list[i].text; } } } return ""; } //获取单位信息 //unitIdType 查找类型 function getSysUnit(matId) { var _datas = []; // _datas.push({ // "id": "", // "text": "--请选择--" // }); $.yvan.ajax({ url: api('/sys/sysUnit/queryAll'), data: {status: 1, matId: matId}, method: 'post', async: false, success: function (data) { if (data.data != null && data.data != undefined) { for (var i = 0; i < data.data.length; i++) { _datas.push({ "id": data.data[i].unitId, "text": data.data[i].unitName }); } } } }); return _datas; } //用于新下拉框控件 //获取单位信息 //unitIdType 查找类型 function getSysUnitChildren() { var _datas = []; $.yvan.ajax({ url: apiMat('/sys/sysUnit/queryChildren'), data: {status: 1}, method: 'post', async: false, success: function (data) { if (isNotNull(data) && isNotNull(data.data)) { _datas = data.data; } } }); return _datas; } //查找单位中对应id的name,找不到返回空 function getSysUnitName(id) { if (id == null || id == undefined) return ""; var list = getSysUnit(); if (list != undefined && list != null) { for (var i = 0; i < list.length; i++) { if (id == list[i].id) { return list[i].text; } } } return ""; } //设置panel的值 function setPanel(context, $id, _items) { if (isNotNull($id)) { $id.empty(); $id.power('renderEach', { $target: $id, items: _items, //填充值 context: context }); } } //获取随机数,n:几位数 function randomNum(n) { var t = ''; for (var i = 0; i < n; i++) { t += Math.floor(Math.random() * 99); } return t; } //添加年、月、天,返回时间 function DateAdd(interval, number, date) { /* * 功能:实现JSScript的DateAdd功能. * 参数:interval,字符串表达式,表示要添加的时间间隔. * 参数:number,数值表达式,表示要添加的时间间隔的个数. * 参数:date,时间对象. * 返回:新的时间对象. * var now = new Date(); * var newDate = DateAdd( "d ",5,now); *--------------- DateAdd(interval,number,date) ----------------- */ switch (interval) { case "year": { date.setFullYear(date.getFullYear() + number); return date; // break; } case "month": { date.setMonth(date.getMonth() + number); return date; // break; } case "week": { date.setDate(date.getDate() + number * 7); return date; // break; } case "day": { date.setDate(date.getDate() + number); return date; // break; } case "hour": { date.setHours(date.getHours() + number); return date; // break; } case "minutes": { date.setMinutes(date.getMinutes() + number); return date; // break; } case "seconds": { date.setSeconds(date.getSeconds() + number); return date; // break; } default: { // date.setDate(d.getDate() + number); return date; // break; } } } //验证日期是否有效 function isValidateDate(date) { if (!isNotNullOrEmpty(date)) { return false; } date = $.trim(date); var reg = /^(\d{4})-(\d{2})-(\d{2})$/; reg.exec(date); if (!reg.test(date) && RegExp.$2 <= 12 && RegExp.$3 <= 31) { return false; } var year, month, day; year = parseInt(date.split("-")[0], 10); month = parseInt(date.split("-")[1], 10); day = parseInt(date.split("-")[2], 10); if (!((1 <= month) && (12 >= month) && (31 >= day) && (1 <= day))) { return false; } if ((month <= 7) && ((month % 2) == 0) && (day >= 31)) { return false; } if ((month >= 8) && ((month % 2) == 1) && (day >= 31)) { return false; } if (month == 2) { if ((year % 400 == 0) || ((year % 4 == 0) && (year % 100 != 0))) { if (day > 29) { return false; } } else { if (day > 28) { return false; } } } return true; } //加减日期的天数 function getDay(day) { var today = new Date(); var targetday_milliseconds = today.getTime() + 1000 * 60 * 60 * 24 * day; today.setTime(targetday_milliseconds); //注意,这行是关键代码 var tYear = today.getFullYear(); var tMonth = today.getMonth(); var tDate = today.getDate(); tMonth = doHandleMonth(tMonth + 1); tDate = doHandleMonth(tDate); return tYear + "-" + tMonth + "-" + tDate; } //加减日期的天数(子方法) function doHandleMonth(month) { var m = month; if (month.toString().length == 1) { m = "0" + month; } return m; } //绑定下拉框,isfull是否全选 function bindSelectPost(isfull, url, id, name) { var _datas = []; if (isNotNull(isfull) && isfull) { _datas.push({ id: '', text: '全部' }) } $.yvan.ajax({ url: api(url), method: "post", async: false, success: function (data) { if (data.data != null && data.data != undefined) { for (var i = 0; i < data.data.length; i++) { _datas.push({ "id": data.data[i][id], "text": data.data[i][name] }) } } } }); // console.log(_datas); return _datas; } //首页跳转赋值 function setInputParam(inputParam, $form) { if (isNotNull(inputParam)) { if (isNotNull($form)) { $form.formSet(inputParam) } } } // 【物资编码-批次统计页面使用】 // 判断是否相差几个月 // date1为前时间,date2为后时间。若返回false,表示相差超过3个月,否则表示在3个月以内 function timeDifferenceByStat(month, date11, date22) { //不是时间格式 if (!isNaN(date11) && isNaN(Date.parse(date11))) { $.yvan.msg("开始日期格式不正确"); return false; } if (!isNaN(date22) && isNaN(Date.parse(date22))) { $.yvan.msg("结束日期格式不正确"); return false; } var date1 = new Date(date11); var date2 = new Date(date22); //开始日期不能大于结束日期 if (date1.getTime() > date2.getTime()) { $.yvan.msg("开始日期不能大于结束日期"); return false; } var newYear = date1.getFullYear(); var newMonth = date1.getMonth() + month; // console.log(newMonth); if (newMonth >= 11) { newYear += 1; newMonth -= 11; date1.setFullYear(newYear); date1.setMonth(newMonth - 1); } else { date1.setFullYear(newYear); date1.setMonth(newMonth); } if (date1.getTime() >= date2.getTime()) { return true; } else { $.yvan.msg("不能查询超过" + month + "个月的数据"); return false; } } //获取库区,下拉框绑定值 function getFarmData() { var _datas = []; _datas.push({ "id": FARM_CODE_WH, "text": FARM_CODE_WH_NAME }); _datas.push({ "id": FARM_CODE_YL, "text": FARM_CODE_YL_NAME }); _datas.push({ "id": FARM_CODE_DY, "text": FARM_CODE_DY_NAME }); return _datas; } //获取库区名称 function getFarmName(farmId) { if (isNotNullOrEmpty(farmId)) { if (farmId == 0 || farmId == 1) { return "-" + FARM_CODE_WH_NAME; } else if (farmId == 2) { return "-" + FARM_CODE_YL_NAME; } else if (farmId == 3) { return "-" + FARM_CODE_DY_NAME; } } return ""; } //获取批次分类 function getMatType() { var _datas = []; _datas.push({ "id": MAT_TYPE_器材, "text": MAT_TYPE_NAME_器材 }); _datas.push({ "id": MAT_TYPE_物料, "text": MAT_TYPE_NAME_物资 }); _datas.push({ "id": MAT_TYPE_低值易耗, "text": MAT_TYPE_NAME_消耗物品 }); return _datas; } //获取强制发布分类 function getIsForcePubList() { var _datas = []; _datas.push({ "id": 1, "text": '是' }); _datas.push({ "id": 0, "text": '否' }); _datas.push({ "id": -1, "text": '不处理,封存' }); return _datas; } //入库类型:物资编码使用,编辑页面使用 function getMatInType() { return [{id: 1, text: '外购'}, {id: 2, text: '自制件'}]; }