You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

284 lines
13 KiB

  1. (function (a) {
  2. if (!a.browser) {
  3. a.browser = {};
  4. a.browser.mozilla = !1;
  5. a.browser.webkit = !1;
  6. a.browser.opera = !1;
  7. a.browser.msie = !1;
  8. var b = navigator.userAgent;
  9. a.browser.name = navigator.appName;
  10. a.browser.fullVersion = "" + parseFloat(navigator.appVersion);
  11. a.browser.majorVersion = parseInt(navigator.appVersion, 10);
  12. var f, c; - 1 != (c = b.indexOf("Opera")) ? (a.browser.opera = !0, a.browser.name = "Opera", a.browser.fullVersion = b.substring(c + 6), -1 != (c = b.indexOf("Version")) && (a.browser.fullVersion = b.substring(c + 8))) : -1 != (c = b.indexOf("MSIE")) ? (a.browser.msie = !0, a.browser.name = "Microsoft Internet Explorer", a.browser.fullVersion = b.substring(c + 5)) : -1 != (c = b.indexOf("Chrome")) ? (a.browser.webkit = !0, a.browser.name = "Chrome", a.browser.fullVersion = b.substring(c + 7)) : -1 != (c = b.indexOf("Safari")) ? (a.browser.webkit = !0, a.browser.name = "Safari", a.browser.fullVersion = b.substring(c + 7), -1 != (c = b.indexOf("Version")) && (a.browser.fullVersion = b.substring(c + 8))) : -1 != (c = b.indexOf("Firefox")) ? (a.browser.mozilla = !0, a.browser.name = "Firefox", a.browser.fullVersion = b.substring(c + 8)) : (f = b.lastIndexOf(" ") + 1) < (c = b.lastIndexOf("/")) && (a.browser.name = b.substring(f, c), a.browser.fullVersion = b.substring(c + 1), a.browser.name.toLowerCase() == a.browser.name.toUpperCase() && (a.browser.name = navigator.appName)); - 1 != (b = a.browser.fullVersion.indexOf(";")) && (a.browser.fullVersion = a.browser.fullVersion.substring(0, b)); - 1 != (b = a.browser.fullVersion.indexOf(" ")) && (a.browser.fullVersion = a.browser.fullVersion.substring(0, b));
  13. a.browser.majorVersion = parseInt("" + a.browser.fullVersion, 10);
  14. isNaN(a.browser.majorVersion) && (a.browser.fullVersion = "" + parseFloat(navigator.appVersion), a.browser.majorVersion = parseInt(navigator.appVersion, 10));
  15. a.browser.version = a.browser.majorVersion
  16. }
  17. })(jQuery);
  18. (function (a) {
  19. var b;
  20. a.fn.jqprint = function (f) {
  21. b = a.extend({}, a.fn.jqprint.defaults, f);
  22. f = this instanceof jQuery ? this : a(this);
  23. if (b.operaSupport && a.browser.opera) {
  24. var c = window.open("", "jqPrint-preview");
  25. c.document.open();
  26. var d = c.document
  27. } else {
  28. var e = a("<iframe />");
  29. b.debug || e.css({
  30. position: "absolute",
  31. width: "0px",
  32. height: "0px",
  33. left: "-600px",
  34. top: "-600px"
  35. });
  36. e.appendTo("body");
  37. d = e[0].contentWindow.document
  38. }
  39. d.write("<title></title><style>@page{size: auto;margin: 0mm;}html{background-color: #FFFFFF;margin: 0px;}body{border: solid 1px blue;margin: 10mm 15mm 10mm 15mm;}</style >");
  40. b.importCSS && (0 < a("link[media=print]").length ? a("link[media=print]").each(function () {
  41. d.write("<link type='text/css' rel='stylesheet' href='" + a(this).attr("href") + "' media='print' />")
  42. }) : a("link").each(function () {
  43. if (a(this).attr("href") != '/favicon.ico') {
  44. d.write("<link type='text/css' rel='stylesheet' href='" + a(this).attr("href") + "' />")
  45. }
  46. }), d.write("<style>" + a("style").html() + "</style>"));
  47. b.printContainer ? d.write(f.outer()) : f.each(function () {
  48. d.write(a(this).html())
  49. });
  50. d.close();
  51. (b.operaSupport && a.browser.opera ? c : e[0].contentWindow).focus();
  52. setTimeout(function () {
  53. (b.operaSupport && a.browser.opera ? c : e[0].contentWindow).print();
  54. c && c.close()
  55. }, 1E3)
  56. };
  57. a.fn.outer = function () {
  58. for (var b = this.clone(), c = a(this), b = a(b), d = 0; 100 > d; d++) {
  59. var e = c.parent().prop("nodeName").toLowerCase(),
  60. b = a("<" + e + "></" + e + ">").attr("style", c.parent().attr("style")).addClass(c.parent().attr("class")).html(b.clone());
  61. if ("body" == e) break;
  62. c = c.parent()
  63. }
  64. a(this).find('input').each(function () {
  65. var $this = $(this);
  66. var type = $this.attr('type');
  67. var _id = $(this).attr('id');
  68. if (type == 'radio') {
  69. if ($this.is(':checked')) {
  70. var _name = $(this).attr('name');
  71. var _value = $(this).attr('value');
  72. b.find('[name="' + _name + '"][value="' + _value + '"]').attr('checked', 'checked');
  73. }
  74. }
  75. else {
  76. b.find('#' + _id).attr('value', $(this).val());
  77. }
  78. });
  79. return a(a("<div></div>").html(b)).html()
  80. }
  81. // 力软信息扩展
  82. a.fn.jqprintTable = function (f) {
  83. b = a.extend({}, a.fn.jqprint.defaults, f);
  84. f = this instanceof jQuery ? this : a(this);
  85. if (b.operaSupport && a.browser.opera) {
  86. var c = window.open("", "jqPrint-preview");
  87. c.document.open();
  88. var d = c.document
  89. } else {
  90. var e = a("<iframe />");
  91. b.debug || e.css({
  92. position: "absolute",
  93. width: "0px",
  94. height: "0px",
  95. left: "-600px",
  96. top: "-6000px"
  97. });
  98. e.appendTo("body");
  99. d = e[0].contentWindow.document
  100. }
  101. d.write("<title></title><style>@page{size: auto;margin: 0mm;}html{background-color: #FFFFFF;margin: 0px;}body{border: solid 1px blue;margin: 10mm 15mm 10mm 15mm;}</style >");
  102. d.write('<style>');
  103. d.write('table{margin: 30px;border-collapse: collapse;width: 100%;border-left: 1px solid #ccc;}');
  104. d.write('th{border-top: 1px solid #ccc;border-bottom: 1px solid #ccc;border-right: 1px solid #ccc;padding-top:5px;padding-bottom:5px;text-overflow:ellipsis;word-break:keep-all;overflow:hidden;font-weight:bold;padding-left:5px;padding-right:5px;font-size: 12px;}');
  105. d.write('td{border-bottom: 1px solid #ccc;border-right: 1px solid #ccc;height:25px;line-height:25px;word-break: break-all;padding-left:5px;padding-right:5px;font-size: 12px;}');
  106. d.write('</style>');
  107. b.importCSS && (0 < a("link[media=print]").length ? a("link[media=print]").each(function () {
  108. d.write("<link type='text/css' rel='stylesheet' href='" + a(this).attr("href") + "' media='print' />")
  109. }) : a("link").each(function () {
  110. d.write("<link type='text/css' rel='stylesheet' href='" + a(this).attr("href") + "' />")
  111. }),
  112. d.write("<style>" + a("style").html() + "</style>"));
  113. b.printContainer ? d.write(f.outerTable(b)) : f.each(function () {
  114. d.write(a(this).html())
  115. });
  116. d.close();
  117. (b.operaSupport && a.browser.opera ? c : e[0].contentWindow).focus();
  118. setTimeout(function () {
  119. (b.operaSupport && a.browser.opera ? c : e[0].contentWindow).print();
  120. c && c.close()
  121. }, 1E3)
  122. };
  123. a.fn.outerTable = function (b) {
  124. var $div = a('<div style="-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;padding:5px;width:100%;position:relative;"></div>');
  125. if (!!b.title) {
  126. $div.html('<div style="text-align:center;font-size: 22px;color: #444;width:100%;">' + b.title + '</div>');
  127. }
  128. $div.append(a(this).jfGridPrint());
  129. return a('<div></div>').html($div).html();
  130. };
  131. //// 打印表单
  132. a.jqprintForm = function (data) {
  133. b = a.fn.jqprint.defaults;
  134. if (b.operaSupport && a.browser.opera) {
  135. var c = window.open("", "jqPrint-preview");
  136. c.document.open();
  137. var d = c.document
  138. } else {
  139. var e = a("<iframe />");
  140. b.debug || e.css({
  141. position: "absolute",
  142. width: "0px",
  143. height: "0px",
  144. left: "-600px",
  145. top: "-600px"
  146. });
  147. e.appendTo("body");
  148. d = e[0].contentWindow.document
  149. }
  150. d.write("<title></title><style>@page{size: auto;margin: 0mm;}html{background-color: #FFFFFF;margin: 0px;}body{border: solid 1px blue;margin: 100mm;}</style >");
  151. d.write("<link type='text/css' rel='stylesheet' href='" + top.$.rootUrl + "/Content/jquery/plugin/jqprint/jqprint.css' />");
  152. //d.write("<h2 style='margin-bottom:5mm;text-align:center;'>新疆体育职业技术学院 收文 (办件)处理笺</h2>");
  153. var $table = a('<table></table>');
  154. var num = 24;
  155. var $tr = a('<tr></tr>');
  156. $.each(data, function (_index, _item) {
  157. if (_item.type == 'gird' && _item.data.length > 0) {
  158. if (num > 0 && num < 24) {
  159. $table.append($tr);
  160. $tr = a('<tr></tr>');
  161. num = 24;
  162. }
  163. var _colp = parseInt(24 / _item.gridHead.length);
  164. var _colp_last = 24 - ((_item.gridHead.length - 1) * _colp);
  165. console.log(_colp_last);
  166. $.each(_item.gridHead, function (_i, _h) {
  167. if (_i == _item.gridHead.length - 1) {
  168. $tr.append('<th colspan="' + _colp_last + '">' + _h.label + '</th>');
  169. }
  170. else {
  171. $tr.append('<th colspan="' + _colp + '">' + _h.label + '</th>');
  172. }
  173. });
  174. $table.append($tr);
  175. $.each(_item.data, function (_j, _b) {
  176. $tr = a('<tr></tr>');
  177. $table.append($tr);
  178. $.each(_item.gridHead, function (_i, _h) {
  179. if (_i == _item.gridHead.length - 1) {
  180. $tr.append('<td colspan="' + _colp_last + '">' + _b[_h.name] + '</td>');
  181. }
  182. else {
  183. $tr.append('<td colspan="' + _colp + '">' + _b[_h.name] + '</td>');
  184. }
  185. });
  186. });
  187. $tr = a('<tr></tr>');
  188. }
  189. else if (_item.type == 'input') {
  190. var colspan = _item.col * 2 - 1;
  191. var _text = _item.text;
  192. if (_item.textList) {
  193. _text = String(_item.textList);
  194. }
  195. var $td = a('<td class="input" >' + _text + '</td>');
  196. $td.attr('colspan', colspan);
  197. $tr.append('<td class="input inputname" >' + _item.name + ':</td>');
  198. $tr.append($td);
  199. num = num - colspan - 1;
  200. if (num <= 0) {
  201. num = 24;
  202. $table.append($tr);
  203. $tr = a('<tr></tr>');
  204. }
  205. }
  206. else if (_item.type == 'anodeinfo') {
  207. if (num >= 0 && num < 24) {
  208. $table.append($tr);
  209. $tr = a('<tr></tr>');
  210. num = 24;
  211. }
  212. $tr.append('<td class="input inputname" >' + _item.title + ':</td>');
  213. var __$td = a('<td class="anodeinfo" colspan="23" ><div class="anodeinfod" >' + _item.content + '</div></td>');
  214. var _$div = __$td.find('div');
  215. _$div.append('<div class="tuser" >' + _item.user + '</div>');
  216. _$div.append('<div class="tdate" >' + _item.date + '</div>');
  217. if (_item.signImg) {
  218. _$div.append(_item.signImg);
  219. }
  220. if (_item.stampImg) {
  221. _$div.append(_item.stampImg);
  222. }
  223. $tr.append(__$td);
  224. $table.append($tr);
  225. $tr = a('<tr></tr>');
  226. }
  227. else {
  228. var _colspan = _item.col * 2;
  229. var _$td = a('<td class="titletd" >' + _item.text + '</td>');
  230. _$td.attr('colspan', _colspan);
  231. $tr.append(_$td);
  232. num = num - _colspan;
  233. if (num <= 0) {
  234. num = 24;
  235. $table.append($tr);
  236. $tr = a('<tr></tr>');
  237. }
  238. }
  239. });
  240. if (num > 0 && num < 24) {
  241. $table.append($tr);
  242. }
  243. d.write(a('<div></div>').html($table).html());
  244. console.log(d);
  245. d.close();
  246. (b.operaSupport && a.browser.opera ? c : e[0].contentWindow).focus();
  247. setTimeout(function () {
  248. (b.operaSupport && a.browser.opera ? c : e[0].contentWindow).print();
  249. c && c.close()
  250. }, 1E3)
  251. }
  252. a.fn.jqprint.defaults = {
  253. debug: !1,
  254. importCSS: !0,
  255. printContainer: !0,
  256. operaSupport: !0
  257. };
  258. })(jQuery);