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.

559 lines
25 KiB

1 week ago
  1. <#macro layout>
  2. <!DOCTYPE html>
  3. <html lang="zh-CN">
  4. <head>
  5. <meta charset="utf-8">
  6. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  7. <meta name="viewport" content="width=device-width, initial-scale=1">
  8. <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
  9. <meta name="description" content="">
  10. <meta name="author" content="">
  11. <!-- <link rel="icon" href="/favicon.ico"> -->
  12. <!-- <link rel="shortcut icon" href="/ico/favicon.ico" type="image/x-icon"> -->
  13. <title>${projectTitle!"CCL"}</title>
  14. <!-- Bootstrap core CSS -->
  15. <link href="/bootstrap/3.3.7/bootstrap.min.css" rel="stylesheet">
  16. <link href="/bootstrap/3.3.7/bootstrap-theme.min.css" rel="stylesheet">
  17. <link rel="stylesheet" type="text/css" href="/jeasyui/themes/default/easyui.css">
  18. <link rel="stylesheet" type="text/css" href="/jeasyui/themes/icon.css">
  19. <link rel="stylesheet" type="text/css" href="/js/layer/skin/layer.css">
  20. <!-- Custom styles for this template -->
  21. <link href="/css/app.css" rel="stylesheet">
  22. <script type="text/javascript" src="/jeasyui/jquery.min.js"></script>
  23. <script type="text/javascript" src="/jeasyui/jquery.easyui.min.js"></script>
  24. <script type="text/javascript" src="/jeasyui/locale/easyui-lang-zh_CN.js"></script>
  25. <style>
  26. .common-label .textbox-label {
  27. width: 150px;
  28. }
  29. .oneLine-label .textbox-label {
  30. width: 120px;
  31. }
  32. </style>
  33. <script>
  34. function formatDateTime(value, row){
  35. if (value && value > 0){
  36. var d = new Date(value);
  37. var MM = d.getMonth() <= 9 ? '0'+(d.getMonth()+1) : d.getMonth() + 1;
  38. var hh = d.getHours() <= 9 ? '0'+d.getHours() : d.getHours();
  39. var mm = d.getMinutes() <= 9 ? '0'+d.getMinutes() : d.getMinutes();
  40. var ss = d.getSeconds() <= 9 ? '0'+d.getSeconds() : d.getSeconds();
  41. var dd = d.getDate() <= 9 ? '0'+d.getDate() : d.getDate();
  42. var datestring = d.getFullYear() + "-" + MM + "-" + dd + " " + hh + ":" + mm + ":" + ss;
  43. return datestring;
  44. }
  45. return "";
  46. }
  47. //格式化字符串时间
  48. function formatStringTime(value, row){
  49. if(null == value || '' == value){
  50. return '';
  51. }
  52. //处理位数不够的问题
  53. if(value.length < 19){
  54. value = value.substring(0, 10);
  55. }else{
  56. value = value.substring(0, 19);
  57. }
  58. return value;
  59. }
  60. //格式化liux时间戳
  61. function formatDate(value){
  62. let currentValue = value.replace(/-/g,'/');
  63. if (value){
  64. var d = new Date(currentValue);
  65. var MM = d.getMonth() < 9 ? '0'+(d.getMonth()+1) : d.getMonth() + 1;
  66. var dd = d.getDate() <= 9 ? '0'+d.getDate() : d.getDate();
  67. var datestring = d.getFullYear() + "-" + MM + "-" + dd;
  68. return datestring;
  69. }
  70. return "";
  71. }
  72. function formatQrcode(value,row){
  73. // return "<a target='_blank' href='/qrcode/"+value+"/'>"+value+"</a>";
  74. return "<a target='forprint' href='/print/text/" +value+"/'>"+value+"</a>";
  75. }
  76. function formatLodopPrint(tag){
  77. return function(value, row){
  78. return "<a target='forprint' href='/print/"+tag + "/" +value+"/'>"+value+"</a>";
  79. };
  80. }
  81. </script>
  82. </head>
  83. <body>
  84. <!-- 隐藏域 -->
  85. <#if currentUser??>
  86. <div style="display: none;">
  87. <input id="current_order_no" value="${currentUser.workingOrder! ''}">
  88. <input id="current_username" value="${currentUser.username!''}">
  89. <input id="current_site" value="${currentUser.site!''}">
  90. </div>
  91. </#if>
  92. <#if currentUser??>
  93. <nav class="navbar navbar-default navbar-fixed-top">
  94. <div class="container">
  95. <div class="navbar-header">
  96. <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
  97. <span class="sr-only">Toggle navigation</span>
  98. <span class="icon-bar"></span>
  99. <span class="icon-bar"></span>
  100. <span class="icon-bar"></span>
  101. </button>
  102. <span ><img src="/img/ccl-logo.png" height="30" style="margin-top:10px;margin-right:10px;" /></span>
  103. </div>
  104. <div id="navbar" class="collapse navbar-collapse">
  105. <ul class="nav navbar-nav">
  106. <#if currentUser.isAdmin || currentUser.authorities?contains("prepress")>
  107. <li class="dropdown">
  108. <a href="/order/so_order" role="button" aria-haspopup="true" aria-expanded="false">PrePress</a>
  109. </li>
  110. </#if>
  111. <#if currentUser.isAdmin || currentUser.authorities?contains("basic_info")>
  112. <li class="dropdown">
  113. <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Basic Data<span class="caret"></span></a>
  114. <ul class="dropdown-menu">
  115. <li><a href="/product/part">Part Info</a></li>
  116. </ul>
  117. </li>
  118. </#if>
  119. <#if currentUser.isAdmin || currentUser.authorities?contains("indigo")>
  120. <li class="dropdown">
  121. <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Print<span class="caret"></span></a>
  122. <ul class="dropdown-menu">
  123. <li><a href="/indigo/create_roll">Create Roll</a></li>
  124. <li><a href="javascript:void(0)" onclick="switchOrderModal('indigo');">Switch Order</a></li>
  125. </ul>
  126. </li>
  127. </#if>
  128. <#if currentUser.isAdmin || currentUser.authorities?contains("AOI")>
  129. <li class="dropdown">
  130. <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">AOI<span class="caret"></span></a>
  131. <ul class="dropdown-menu">
  132. <li><a href="/aoi/createFinalRoll">Create FG Roll</a></li>
  133. <li><a href="/aoi/finalRollsSearch">Query - FG Rolls</a></li>
  134. <li><a href="javascript:void(0)" onclick="switchOrderModal('AOI');">Switch Order</a></li>
  135. </ul>
  136. </li>
  137. </#if>
  138. <#if currentUser.isAdmin || currentUser.authorities?contains("scan_stock")>
  139. <li class="dropdown">
  140. <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Receiving<span class="caret"></span></a>
  141. <ul class="dropdown-menu">
  142. <li><a href="/fqc/pack_and_stock">Receiving</a></li>
  143. <li><a href="/fqc/box_stock">Stock Query</a></li>
  144. </ul>
  145. </li>
  146. </#if>
  147. <li class="dropdown">
  148. <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Query<span class="caret"></span></a>
  149. <ul class="dropdown-menu">
  150. <li><a href="/query/receiveQty">Query - SO Receive</a></li>
  151. <li><a href="/query/stockSearch">Stock Query</a></li>
  152. </ul>
  153. </li>
  154. <#if currentUser.isAdmin || currentUser.authorities?contains("delivery")>
  155. <li class="dropdown">
  156. <a href="/delivery/sales_delivery" role="button" aria-haspopup="true" aria-expanded="false">Customer Order Shipment</a>
  157. </li>
  158. </#if>
  159. <#if currentUser.isAdmin || currentUser.authorities?contains("inventoryTasks")>
  160. <li class="dropdown">
  161. <a href="/inventory/inventoryTasks" role="button" aria-haspopup="true" aria-expanded="false">Counting</a>
  162. </li>
  163. </#if>
  164. </ul>
  165. <ul class="nav navbar-nav navbar-right" style="margin-right: -40px;">
  166. <li><a href="javascript:void(0)">Current Shop Order:${currentUser.workingOrder!}</a></li>
  167. <input type="hidden" id="hdnWorkingOrder" value="${currentUser.workingOrder!}" />
  168. <li class="dropdown">
  169. <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">${currentUser.display}<span class="caret"></span></a>
  170. <input type = "hidden" id="subscriber" value="${currentUser.display}"/>
  171. <ul class="dropdown-menu">
  172. <li><a href="javascript:void(0);" onclick="showChangePwdDlg()">Change Password</a></li>
  173. <#if currentUser.isAdmin>
  174. <li><a href="/user/user_page">User Management</a></li>
  175. <#-- <li><a href="/base/various_machine">机器设置</a></li>-->
  176. </#if>
  177. <li><a href="/print/set_printer/">Print Setup</a></li>
  178. <li role="separator" class="divider"></li>
  179. <li><a href="javascript:$('#frmLogout').submit();">Quit</a></li>
  180. </ul>
  181. </li>
  182. <li><a href="javascript:void(0);"></a></li>
  183. </ul>
  184. </div><!--/.nav-collapse -->
  185. </div>
  186. </nav>
  187. </#if>
  188. <div class="container role="main" >
  189. <#nested>
  190. <div id="switch_order_dlg" class="easyui-dialog" style="width:500px;display: none;" closed="true" buttons="#changeWOdlg-buttons">
  191. <form id="switch_order_fm" method="post" class="common-label" novalidate style="margin:0;padding:20px 20px">
  192. <div style="margin-bottom:10px">
  193. <input name="username" class="easyui-textbox" required="true" label="User ID:" style="width:100%">
  194. </div>
  195. <div style="margin-bottom:10px">
  196. <input name="passwd" class="easyui-passwordbox" data-options="lastDelay:50" required="true" label="Pass Word:" style="width:100%">
  197. </div>
  198. <div style="margin-bottom:10px">
  199. <input name="orderNo" class="easyui-textbox" required="true" label="Switch to Order :" style="width:100%">
  200. </div>
  201. </form>
  202. </div>
  203. <div id="changeWOdlg-buttons" style="display: none;">
  204. <a href="javascript:void(0)" class="easyui-linkbutton c6" iconCls="icon-ok" onclick="switchOrder()" style="width:90px">Save</a>
  205. <a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-cancel" onclick="javascript:$('#switch_order_dlg').dialog('close')" style="width:90px">Cancel</a>
  206. </div>
  207. <!-- 漏扫补号 -->
  208. <div id="complementSnDlg" class="easyui-dialog" style="width:500px;display: none;"
  209. closed="true" buttons="#complementSnDlg-buttons">
  210. <form id="complementSnDlgFm" method="post" novalidate style="margin:0;padding:20px 20px">
  211. <div style="margin-bottom:10px">
  212. <input name="serialNo" class="easyui-textbox" required="true" label="Serials Number:" style="width:100%">
  213. </div>
  214. <div style="margin-bottom:10px">
  215. <input name="finalRollNo" class="easyui-textbox" required="true" label="Roll No:" style="width:100%">
  216. </div>
  217. <div style="margin-bottom:10px">
  218. <input name="pid" class="easyui-textbox" required="true" label="Pid:" style="width:100%">
  219. </div>
  220. </form>
  221. </div>
  222. <div id="complementSnDlg-buttons" style="display: none;">
  223. <a href="javascript:void(0)" class="easyui-linkbutton c6" iconCls="icon-ok" onclick="saveComplement()" style="width:90px">Save</a>
  224. <!-- <a href="javascript:void(0)" class="easyui-linkbutton c6" iconCls="icon-ok" onclick="exportComplement()" style="width:90px">Export</a> -->
  225. <a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-cancel" onclick="javascript:$('#complementSnDlg').dialog('close')" style="width:90px">Cancel</a>
  226. </div>
  227. <!-- 缺失号导出 -->
  228. <div id="exportSnDlg" class="easyui-dialog" style="width:500px;display: none;"
  229. closed="true" buttons="#exportSnDlg-buttons">
  230. <form id="exportSnDlgFm" method="post" novalidate style="margin:0;padding:20px 20px">
  231. <div style="margin-bottom:10px">
  232. <input id = "pid" name="pid" class="easyui-textbox" required="true" label="Pid:" style="width:100%">
  233. </div>
  234. </form>
  235. </div>
  236. <div id="exportSnDlg-buttons" style="display: none;">
  237. <a href="javascript:void(0)" class="easyui-linkbutton c6" iconCls="icon-ok" onclick="exportComplement()" style="width:90px">Export</a>
  238. <a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-cancel" onclick="javascript:$('#exportSnDlg').dialog('close')" style="width:90px">Cancel</a>
  239. </div>
  240. <!-- 扫描箱号 -->
  241. <div id="scanBoxDlg" class="easyui-dialog" style="width:500px;display: none;"
  242. closed="true" buttons="#scanBoxDlg-buttons">
  243. <form id="scanBoxDlgFm" method="post" novalidate style="margin:0;padding:20px 20px">
  244. <div style="margin-bottom:10px">
  245. <input id = "boxNo" name="boxNo" class="easyui-textbox" required="true" label="Box No:" style="width:100%">
  246. </div>
  247. </form>
  248. </div>
  249. <div id="scanBoxDlg-buttons" style="display: none;">
  250. <a href="javascript:void(0)" class="easyui-linkbutton c6" iconCls="icon-ok" onclick="scanBoxComplement()" style="width:90px">Check</a>
  251. <a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-cancel" onclick="javascript:$('#scanBoxDlg').dialog('close')" style="width:90px">Cancel</a>
  252. </div>
  253. <!-- 扫描序列号 -->
  254. <div id="scanSnDlg" class="easyui-dialog" style="width:500px;display: none;"
  255. closed="true" buttons="#scanSnDlg-buttons">
  256. <form id="scanSnDlgFm" method="post" novalidate style="margin:0;padding:20px 20px">
  257. <div style="margin-bottom:10px">
  258. <input id = "snNo" name="snNo" class="easyui-textbox" required="true" label="Serials Number:" style="width:100%">
  259. </div>
  260. </form>
  261. </div>
  262. <div id="scanSnDlg-buttons" style="display: none;">
  263. <a href="javascript:void(0)" class="easyui-linkbutton c6" iconCls="icon-ok" onclick="scanSnComplement()" style="width:90px">Check</a>
  264. <a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-cancel" onclick="javascript:$('#scanSnDlg').dialog('close')" style="width:90px">Cancel</a>
  265. </div>
  266. <!-- 缺失报告 -->
  267. <div id="missingSnDlg" class="easyui-dialog" style="width:500px;display: none;"
  268. closed="true" buttons="#missingSnDlg-buttons">
  269. <form id="missingSnDlgFm" method="post" novalidate style="margin:0;padding:20px 20px">
  270. <div style="margin-bottom:10px">
  271. <input id = "start_qty" name="start_qty" class="easyui-numberbox" required="true" label="Top few digits:" style="width:100%">
  272. </div>
  273. <div style="margin-bottom:10px">
  274. <input id = "end_qty" name="end_qty" class="easyui-numberbox" required="true" label="Last few digits:" style="width:100%">
  275. </div>
  276. <div style="margin-bottom:10px">
  277. <input id = "order_no" name="order_no" class="easyui-textbox" required="true" label="SO No:" style="width:100%">
  278. </div>
  279. <div style="margin-bottom:10px">
  280. <input id = "serial_no" name="serial_no" class="easyui-textbox" required="true" label="Serials Number:" style="width:100%">
  281. </div>
  282. </form>
  283. </div>
  284. <div id="missingSnDlg-buttons" style="display: none;">
  285. <a href="javascript:void(0)" class="easyui-linkbutton c6" iconCls="icon-ok" onclick="exportMissSn()" style="width:90px">Export</a>
  286. <a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-cancel" onclick="javascript:$('#missingSnDlg').dialog('close')" style="width:90px">Cancel</a>
  287. </div>
  288. <#if currentUser??>
  289. <div id="changePWDdlg" class="easyui-dialog" style="width:500px;display: none;"
  290. closed="true" buttons="#changePWDdlg-buttons">
  291. <form id="changePWDdlgFm" method="post" novalidate style="margin:0;padding:20px 20px">
  292. <div style="margin-bottom:10px" class="common-label">
  293. <input id="update_username" name="username" value="${currentUser.username!''}" class="easyui-textbox " data-options="lastDelay:50" readonly="readonly" required="true" label="User ID:" style="width:100%">
  294. </div>
  295. <div style="margin-bottom:10px" class="common-label">
  296. <input name="oldPassword" class="easyui-passwordbox" data-options="lastDelay:50" required="true" label="Old Password:" style="width:100%">
  297. </div>
  298. <div style="margin-bottom:10px" class="common-label">
  299. <input name="newPassword" class="easyui-passwordbox" data-options="lastDelay:50" required="true" label="New Password:" style="width:100%">
  300. </div>
  301. <div style="margin-bottom:10px" class="common-label">
  302. <input name="newPasswordConfirm" class="easyui-passwordbox" data-options="lastDelay:50" required="true" label="Confirm new password:" style="width:100%">
  303. </div>
  304. </form>
  305. </div>
  306. <div id="changePWDdlg-buttons" style="display: none;">
  307. <a href="javascript:void(0)" class="easyui-linkbutton c6" iconCls="icon-ok" onclick="saveNewPwd()" style="width:90px">Save</a>
  308. <a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-cancel" onclick="javascript:$('#changePWDdlg').dialog('close')" style="width:90px">Cancel</a>
  309. </div>
  310. </#if>
  311. <!-- 扫描卷号-冻结 -->
  312. <div id="frozenRnDlg" class="easyui-dialog" style="width:500px;display: none;"
  313. closed="true" buttons="#scanSnDlg-buttons">
  314. <form id="frozenRnDlgFm" method="post" novalidate style="margin:0;padding:20px 20px">
  315. <div style="margin-bottom:10px">
  316. <input id = "frozenRn" name="frozenRn" class="easyui-textbox" required="true" label="Roll No:" style="width:100%">
  317. </div>
  318. </form>
  319. </div>
  320. <div id="scanSnDlg-buttons" style="display: none;">
  321. <a href="javascript:void(0)" class="easyui-linkbutton c6" iconCls="icon-ok" onclick="frozenRnComplement()" style="width:90px">Check</a>
  322. <a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-cancel" onclick="javascript:$('#frozenRnDlg').dialog('close')" style="width:90px">Cancel</a>
  323. </div>
  324. <script>
  325. //切换工单的工序
  326. let switchOrderItemNo = "";
  327. //打开切换工单的工序
  328. function switchOrderModal(itemNo) {
  329. switchOrderItemNo = itemNo;
  330. $('#switch_order_dlg').dialog('center').dialog('setTitle', 'update order(need authority)').dialog('open');
  331. $('#switch_order_fm').form('clear');
  332. }
  333. // function changeWorkingOrder(site) {
  334. // SWITCH_ORDER_SITE = site;
  335. // $('#changeWOdlg').dialog('center').dialog('setTitle', '修改操作订单(需有权限人操作)').dialog('open');
  336. // $('#changeWOdlgFm').form('clear');
  337. // }
  338. //切换工单
  339. function switchOrder() {
  340. $('#switch_order_fm').form('submit',{
  341. url: "/indigo/"+switchOrderItemNo+"/switchOrderNo",
  342. onSubmit: function(param){
  343. param.operatorId = $("#current_username").val();
  344. return $(this).form('validate');
  345. },
  346. success: function(result){
  347. var result = eval("("+result+")");
  348. if (result.success){
  349. $('#switch_order_dlg').dialog('close'); // close the dialog
  350. window.location.reload();
  351. //$.messager.alert('info', '切换成功!', 'info');
  352. } else {
  353. $.messager.alert('error',result.msg, 'error');
  354. }
  355. }
  356. });
  357. }
  358. function showChangePwdDlg() {
  359. $('#changePWDdlg').dialog('center').dialog('setTitle', 'Edit PassWord').dialog('open');
  360. $('#changePWDdlgFm').form('clear');
  361. //设置用户名
  362. $('#update_username').textbox('setValue', $('#current_username').val());
  363. }
  364. function saveNewPwd() {
  365. $('#changePWDdlgFm').form('submit',{
  366. url: "/user/updateUserPassword",
  367. onSubmit: function(){
  368. return $(this).form('validate');
  369. },
  370. success: function(result){
  371. var result = eval("("+result+")");
  372. if (result.errorMsg){
  373. $.messager.alert('error',result.errorMsg, 'error');
  374. } else {
  375. $('#changePWDdlg').dialog('close'); // close the dialog
  376. }
  377. }
  378. });
  379. }
  380. //漏扫补号页面
  381. function complement() {
  382. $('#complementSnDlg').dialog('center').dialog('setTitle', 'Manual Scan Missing Serial No').dialog('open');
  383. $('#complementSnDlgFm').form('clear');
  384. }
  385. //漏扫补号保存
  386. function saveComplement() {
  387. $('#complementSnDlgFm').form('submit',{
  388. url: "/complement/soFinalRollDtls",
  389. onSubmit: function(){
  390. return $(this).form('validate');
  391. },
  392. success: function(result){
  393. console.log(result);
  394. var result = eval("("+result+")");
  395. if (result.errorMsg){
  396. $.messager.alert('error',result.errorMsg, 'error');
  397. } else {
  398. $('#complementSnDlgFm').form('clear');
  399. }
  400. }
  401. });
  402. }
  403. //导出缺失序列号
  404. function exportSn() {
  405. $('#exportSnDlg').dialog('center').dialog('setTitle', 'export missing serial number').dialog('open');
  406. $('#exportSnDlgFm').form('clear');
  407. }
  408. //导出缺失序列号
  409. function exportComplement(){
  410. var pid = $("#pid").val();
  411. $.post("/shipment/exportSn", {pid: pid}, function(ret){
  412. if(ret.success){
  413. window.location.href="/prepress/download/"+ret.fileName;
  414. }else{
  415. $.messager.alert('Error',ret.errorMsg, 'error');
  416. }
  417. });
  418. }
  419. //导出缺失序列号
  420. function missingReport() {
  421. $('#missingSnDlg').dialog('center').dialog('setTitle', 'Statistic of Missing Serial Nos').dialog('open');
  422. $('#missingSnDlgFm').form('clear');
  423. $('#start_qty').numberbox('setValue', "10");
  424. $('#end_qty').numberbox('setValue', "10");
  425. }
  426. //导出缺失序列号
  427. function exportMissSn(){
  428. var startQty = $("#start_qty").val();
  429. var endQty = $("#end_qty").val();
  430. var orderNo = $("#order_no").val();
  431. var serialNo = $("#serial_no").val();
  432. $.post("/prepress/exportMissSn", {startQty: startQty,endQty: endQty,orderNo: orderNo,serialNo: serialNo}, function(ret){
  433. if(ret.success){
  434. window.location.href="/prepress/downloadFileZip/"+ret.fileName;
  435. }else{
  436. $.messager.alert('Error',ret.errorMsg, 'error');
  437. }
  438. });
  439. }
  440. //扫描箱号
  441. function scanBox() {
  442. $('#scanBoxDlg').dialog('center').dialog('setTitle', 'Scaning Box No').dialog('open');
  443. $('#scanBoxDlgFm').form('clear');
  444. }
  445. function scanBoxComplement(){
  446. var boxNo = $("#boxNo").val();
  447. $.post("/shipment/scanBoxNo", {boxNo: boxNo}, function(ret){
  448. if(ret.success){
  449. if(ret.flag){
  450. $.messager.confirm('Confirm',' <b>'+boxNo+'</b>There is surplus roll in this box, are you sure to print ?',function(r){
  451. if (r){
  452. $("#ifmforprint").attr('src', "/print/checkReceiveBox/" + boxNo + "/");
  453. }
  454. });
  455. }else{
  456. $.messager.alert('Info','No surplus roll!', 'Info');
  457. }
  458. }else{
  459. $.messager.alert('Error',ret.errorMsg, 'error');
  460. }
  461. });
  462. }
  463. //扫描序列号
  464. function scanSn() {
  465. $('#scanSnDlg').dialog('center').dialog('setTitle', 'Scan Serials No').dialog('open');
  466. $('#scanSnDlgFm').form('clear');
  467. }
  468. function scanSnComplement(){
  469. var snNo = $("#snNo").val();
  470. $.post("/shipment/scanSnNo", {snNo: snNo}, function(ret){
  471. if(ret.success){
  472. $.messager.confirm('Confirm',' <b>'+ret.rollNo+'</b> Is Printed ?',function(r){
  473. if (r){
  474. $("#ifmforprint").attr('src', "/print/newlabel/" + ret.rollNo + "/");
  475. }
  476. });
  477. }else{
  478. $.messager.alert('Error',ret.errorMsg, 'error');
  479. }
  480. });
  481. }
  482. //冻结卷页面
  483. function frozenSn(){
  484. $('#frozenRnDlg').dialog('center').dialog('setTitle', 'Scanning Roll No').dialog('open');
  485. $('#frozenRnDlgFm').form('clear');
  486. }
  487. //确认冻结卷
  488. function frozenRnComplement(){
  489. var frozenRn = $("#frozenRn").val();
  490. $.post("/scanning/frozenRn", {frozenRn: frozenRn}, function(ret){
  491. if(ret.success){
  492. $.messager.alert('Info',"Frozen", 'Info');
  493. $('#frozenRnDlg').dialog('close');
  494. }else{
  495. $.messager.alert('Error',ret.errorMsg, 'error');
  496. }
  497. });
  498. }
  499. </script>
  500. </div> <!-- /container -->
  501. <iframe id="ifmforprint" name="forprint" style="display: none;"></iframe>
  502. <script src="/js/holder.min.js"></script>
  503. <script src="/js/bootstrap.js"></script>
  504. <script src="/js/WdatePicker.js"></script>
  505. <script src="/js/app.js?v=1"></script>
  506. <form id="frmLogout" action="/logout" method="post">
  507. </form>
  508. </body>
  509. </html>
  510. </#macro>