util.js 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275
  1. function doajax(method, dataurl, data, sucessCallBack, errorCallBack) {
  2. var user_key = undefined;
  3. var user = $.zui.store.get("user")
  4. if (typeof(user) == "undefined" || user == null) {
  5. } else {
  6. user_key = "XinTong " + (user.token);
  7. }
  8. if (typeof(user_key) == "undefined" || user_key == null) {
  9. $.ajax({
  10. type: method,
  11. url: dataurl,
  12. contentType: "application/json",
  13. dataType: "json",
  14. async: true,
  15. data: JSON.stringify(data),
  16. success: sucessCallBack,
  17. error: function(error) {
  18. if (HandleError(error)) return;
  19. errorCallBack(error);
  20. }
  21. })
  22. } else {
  23. $.ajax({
  24. type: method,
  25. url: dataurl,
  26. contentType: "application/json",
  27. dataType: "json",
  28. beforeSend: function(xhr) {
  29. xhr.setRequestHeader("token", user_key);
  30. },
  31. headers: {
  32. 'token': user_key
  33. },
  34. async: true,
  35. data: JSON.stringify(data),
  36. success: sucessCallBack,
  37. error: function(error) {
  38. if (HandleError(error)) return;
  39. errorCallBack(error);
  40. }
  41. })
  42. }
  43. }
  44. function ajaxGet(dataurl, data, sucessCallBack, errorCallBack) {
  45. doajax("GET", dataurl, data, sucessCallBack, errorCallBack)
  46. }
  47. function ajaxPost(dataurl, data, sucessCallBack, errorCallBack) {
  48. doajax("POST", dataurl, data, sucessCallBack, errorCallBack)
  49. }
  50. function ajaxPut(dataurl, data, sucessCallBack, errorCallBack) {
  51. doajax("PUT", dataurl, data, sucessCallBack, errorCallBack)
  52. }
  53. function ajaxDelete(dataurl, data, sucessCallBack, errorCallBack) {
  54. doajax("DELETE", dataurl, data, sucessCallBack, errorCallBack)
  55. }
  56. function HandleError(error) {
  57. if (typeof(error) != "undefined" && error != null) {
  58. if (typeof(error.status) != "undefined" && error.status != null) {
  59. if (error.status == 403) {
  60. //未登录退出
  61. layer.msg('登陆已经过期,将重新登陆!', {
  62. time: 2000, //20s后自动关闭
  63. }, function() {
  64. self.location = base_ui_url + UI_USER_LOGIN
  65. })
  66. return true;
  67. }
  68. }
  69. }
  70. return false;
  71. }
  72. function GetQueryString(name) {
  73. var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
  74. var r = window.location.search.substr(1).match(reg);
  75. if (r != null) {
  76. return unescape(r[2]);
  77. }
  78. return null;
  79. }
  80. function getItemByIdFromArr(id,curDatas){
  81. var rowData;
  82. for(var i=0;i<curDatas.length;i++){
  83. if(id==curDatas[i].id){
  84. rowData = curDatas[i];
  85. break;
  86. }
  87. }
  88. return rowData;
  89. }
  90. function showPopup4Common(title,callback,area,divId){
  91. if(!area) area='auto';
  92. if(!divId) divId='#form-div';
  93. //添加常量页面
  94. return layer.open({
  95. type: 1,
  96. area: area,
  97. title: title,
  98. closeBtn: 1,
  99. shadeClose: true,
  100. skin: 'layui-layer-lan',
  101. content: $(divId),
  102. btn: '保存',
  103. btnAlign: 'c', //按钮居中
  104. shade: 0 ,//不显示遮罩
  105. yes: function(index){
  106. if(callback!=false){
  107. callback();
  108. }
  109. layer.close(index);
  110. }
  111. });
  112. }
  113. function deleteItem4Common(id,url,okCb){
  114. //询问框
  115. layer.confirm('确定删除记录?', {
  116. btn: ['删除','取消'] //按钮
  117. }, function(){
  118. var param ={"id":id};
  119. no_return_common_service(url, param, function(data) {
  120. okCb();//重新加载表格数据
  121. layer.msg(data, {
  122. time: 2000//20s后自动关闭
  123. });
  124. }, function(error) {
  125. alert(error);
  126. });
  127. }, function(index){
  128. layer.close(index);
  129. });
  130. }
  131. function addOrUpdateItem4Common(param,url,okCb){
  132. no_return_common_service(url, param, function(data) {
  133. if(okCb) okCb();//重新加载表格数据
  134. layer.msg(data, {
  135. time: 2000//20s后自动关闭
  136. });
  137. }, function(error) {
  138. alert(error);
  139. });
  140. }
  141. function setFeSelect(div,selectId){
  142. get_common_service("/dept/getAllFs",null,function(data){
  143. var optStr = '<option value="">全部</option>';
  144. for(var i in data) {
  145. if(data[i].deptid==selectId)
  146. optStr += '<option value="'+data[i].deptid+'" selected="selected">'+data[i].name+'</option>';
  147. else
  148. optStr += '<option value="'+data[i].deptid+'">'+data[i].name+'</option>';
  149. }
  150. $(div).html('');
  151. $(div).html(optStr);
  152. });
  153. }
  154. function setLaneSelect(div,selectId){
  155. var optStr = '';
  156. var data =[];
  157. for(var i =0;i<=8;i++) {
  158. if(i==0)
  159. data.push({id:i,name:'值机室'});
  160. else
  161. data.push({id:i,name:i+'车道'});
  162. }
  163. for(var i in data) {
  164. if(i==selectId)
  165. optStr += '<option value="'+data[i].id+'" selected="selected">'+data[i].name+'</option>';
  166. else
  167. optStr += '<option value="'+data[i].id+'">'+data[i].name+'</option>';
  168. }
  169. $(div).html('');
  170. $(div).html(optStr);
  171. }
  172. // var ViewMap = new HashMap()
  173. // ViewMap.set("/view/mytask/unchecked.html", __inline('/view/mytask/unchecked.html'));
  174. // ViewMap.set("/view/mytask/unexamined.html", __inline('/view/mytask/unexamined.html'));
  175. // ViewMap.set("/view/mytask/undispatched.html", __inline('/view/mytask/undispatched.html'));
  176. // ViewMap.set("/view/mytask/dispatched.html", __inline('/view/mytask/dispatched.html'));
  177. // ViewMap.set("/view/constant/constant.html", __inline('/view/constant/constant.html'));
  178. /**
  179. * @Func 处理长整形时间格式化
  180. * @time long
  181. * @format string 有默认值
  182. */
  183. function timeStamp2String(time,format){
  184. if(time == "" || time == null)
  185. return ;
  186. if(format==undefined || format == "")
  187. format = "yyyy/MM/dd hh:mm:ss";
  188. var datetime = new Date();
  189. datetime.setTime(time);
  190. return datetime.Format(format);
  191. };
  192. /**
  193. * @Func 时间格式化
  194. * @FuncName Format
  195. * (new Date()).Format("yyyy-MM-dd hh:mm:ss.S") ==> 2006-07-02 08:09:04.423
  196. */
  197. Date.prototype.Format = function (fmt) {
  198. var o = {
  199. "M+": this.getMonth() + 1,
  200. "d+": this.getDate(),
  201. "h+": this.getHours(),
  202. "m+": this.getMinutes(),
  203. "s+": this.getSeconds(),
  204. "q+": Math.floor((this.getMonth() + 3) / 3),
  205. "S": this.getMilliseconds()
  206. };
  207. if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
  208. for (var k in o)
  209. if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
  210. return fmt;
  211. };
  212. /**
  213. * 提示框
  214. */
  215. function tip(data,timeout){
  216. if(data==undefined || data=='')
  217. return ;
  218. layer.msg(data, {
  219. time: (timeout!=null)?timeout:2000 //20s后自动关闭
  220. });
  221. }
  222. function showPopup4CommonBtns(title,area,divId,btns,callback1,callback2){
  223. if(!area) area='auto';
  224. if(!divId) divId='#form-div';
  225. //添加常量页面
  226. return layer.open({
  227. type: 1,
  228. area: area,
  229. title: title,
  230. closeBtn: 1,
  231. shadeClose: true,
  232. skin: 'layui-layer-lan',
  233. content: $(divId),
  234. btn: btns,
  235. btnAlign: 'c', //按钮居中
  236. shade: 0 ,//不显示遮罩
  237. yes: function(index){
  238. if(callback!=false){
  239. callback();
  240. }
  241. layer.close(index);
  242. }
  243. });
  244. }