heheNewOrderList.jsp 41 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007
  1. <%@ page import="java.util.Date" %>
  2. <%@ page contentType="text/html;charset=UTF-8" %>
  3. <%@ include file="/WEB-INF/views/include/taglib.jsp" %>
  4. <html>
  5. <head>
  6. <title>订单管理</title>
  7. <meta name="decorator" content="default"/>
  8. <style type="text/css">
  9. .table th {
  10. text-align: center;
  11. }
  12. .table td {
  13. text-align: center;
  14. }
  15. .data-title {
  16. width: 100%;
  17. display: table;
  18. }
  19. .data-title ul li {
  20. word-break: break-all;
  21. display: table-cell;
  22. width: 100px;
  23. border: 1px solid #000;
  24. text-align: center;
  25. height: 35px;
  26. vertical-align: middle;
  27. border-right: 0;
  28. border-bottom: 0
  29. }
  30. .data-title ul {
  31. margin-bottom: 0 !important;
  32. display: table-row;
  33. }
  34. .data-title ul li:last-of-type {
  35. width: 120px;
  36. border-right: 1px solid #000000;
  37. }
  38. .data-title ul:last-of-type li {
  39. border-bottom: 1px solid #000000
  40. }
  41. .data-title ul li:nth-child(6) {
  42. width: 80px
  43. }
  44. .spileOrder li:nth-of-type(1) {
  45. position: relative
  46. }
  47. .san {
  48. width: 10px;
  49. height: 10px;
  50. border-top: 2px solid #000;
  51. border-right: 2px solid #000;
  52. transform: rotate(45deg);
  53. position: absolute;
  54. right: -2px;
  55. top: 50%;
  56. margin-top: -5px;
  57. cursor: pointer
  58. }
  59. .red-waring {
  60. margin: 0 !important;
  61. background-color: #f3f3f3 !important;
  62. }
  63. .red-waring li {
  64. border-color: red !important;
  65. }
  66. #biao1 {
  67. position: absolute;
  68. left: -9999px;
  69. top: -9999px;
  70. z-index: -99;
  71. width: 1px;
  72. height: 1px;
  73. }
  74. .operation-btn {
  75. cursor: pointer;
  76. }
  77. .operation-block {
  78. background: #fff;
  79. position: absolute;
  80. right: 2px;
  81. padding: 10px;
  82. border: 1px solid #666;
  83. -webkit-border-radius: 5px;
  84. -moz-border-radius: 5px;
  85. border-radius: 5px;
  86. z-index: 999;
  87. display: none;
  88. }
  89. .operation-block a {
  90. display: block;
  91. padding: 3px 0;
  92. }
  93. .refund-selector {
  94. width: 150px;
  95. height: 26px;
  96. line-height: 26px;
  97. text-indent: 10px;
  98. background: #fff;
  99. display: inline-block;
  100. -webkit-border-radius: 3px;
  101. -moz-border-radius: 3px;
  102. border-radius: 3px;
  103. border: 1px solid #ccc;
  104. vertical-align: middle;
  105. position: relative;
  106. cursor: pointer;
  107. }
  108. .refund-selector ul {
  109. z-index: 999;
  110. }
  111. .refund-selector li {
  112. width: 100%;
  113. text-indent: 10px;
  114. }
  115. .refund-selector li:hover {
  116. background: #3875d7;
  117. color: #fff;
  118. }
  119. .refund-arrow {
  120. display: inline-block;
  121. width: 18px;
  122. height: 100%;
  123. position: absolute;
  124. right: 0;
  125. top: 0;
  126. border-left: 1px solid #aaa;
  127. border-radius: 0 4px 4px 0;
  128. background-clip: padding-box;
  129. background: #eee;
  130. background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #ccc), color-stop(0.6, #eee));
  131. background-image: -webkit-linear-gradient(center bottom, #ccc 0, #eee 60%);
  132. background-image: -moz-linear-gradient(center bottom, #ccc 0, #eee 60%);
  133. filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#cccccc', GradientType=0);
  134. background-image: linear-gradient(top, #ccc 0, #eee 60%);
  135. }
  136. .refund-arrow b {
  137. display: block;
  138. width: 100%;
  139. height: 100%;
  140. background: url('/static/jquery-select2/3.4/select2.png') no-repeat 0 1px;
  141. }
  142. .refund-block1, .refund-block2 {
  143. width: 100%;
  144. position: absolute;
  145. background: #fff;
  146. -webkit-border-radius: 3px;
  147. -moz-border-radius: 3px;
  148. border-radius: 3px;
  149. border: 1px solid #ccc;
  150. margin: 0;
  151. color: #666;
  152. display: none;
  153. }
  154. .refund-more {
  155. position: relative;
  156. }
  157. .refund-block1 {
  158. top: 26px;
  159. }
  160. .refund-block2 {
  161. left: 100%;
  162. top: 0;
  163. }
  164. .refund-selector .refund-more:hover .refund-block2 {
  165. display: block;
  166. }
  167. #searchForm {
  168. line-height: 40px;
  169. }
  170. #searchForm .ul-form {
  171. overflow: visible;
  172. }
  173. #searchForm {
  174. white-space: nowrap;
  175. }
  176. #searchForm label {
  177. margin-top: 15px;
  178. }
  179. .ul-form {
  180. white-space: nowrap;
  181. margin-left: -10px !important;
  182. }
  183. .ul-form label {
  184. width: 90px;
  185. text-align: right;
  186. }
  187. .time-space-symbols {
  188. width: 100px;
  189. display: inline-block;
  190. text-align: center;
  191. }
  192. #btnSubmit {
  193. width: 128px;
  194. margin-left: 152px;
  195. }
  196. .select-ele {
  197. width: 177px;
  198. }
  199. #auditBox {
  200. padding: 20px;
  201. line-height: 30px
  202. }
  203. #auditBox p {
  204. font-size: 16px;
  205. margin: 0 0 0 0;
  206. }
  207. #auditBox .note-div {
  208. font-size: 16px;
  209. }
  210. .weishaIcon {
  211. background: darkorange;
  212. color: white;
  213. margin: 0 0px;
  214. padding: 0 3px;
  215. font-style: normal;
  216. font-size: 12px;
  217. display: inline-block;
  218. border-radius: 2px
  219. }
  220. </style>
  221. <script type="text/javascript" src="${ctxStatic}/QRCode/jquery.qrcode.min.js"></script>
  222. <script type="text/javascript" src="static/common/clipboard.min.js"></script>
  223. <script type="text/javascript">
  224. function copyUrl2() {
  225. var Url2 = document.getElementById("biao1");
  226. Url2.select(); // 选择对象
  227. document.execCommand("Copy"); // 执行浏览器复制命令
  228. // alert("已复制好,可贴粘。");
  229. }
  230. $(document).ready(function () {
  231. var lab = '';
  232. var val = '';
  233. var startRefundTime = $('#startRefundTime');
  234. var endRefundTime = $('#endRefundTime');
  235. startRefundTime.attr('disabled', 'disabled');
  236. endRefundTime.attr('disabled', 'disabled');
  237. startRefundTime.val('');
  238. endRefundTime.val('');
  239. switch ('${orderRefundType}') {
  240. case '':
  241. lab = '全部';
  242. val = '';
  243. break;
  244. case '0':
  245. lab = '无';
  246. val = '0';
  247. break;
  248. case '1':
  249. lab = '全部状态';
  250. val = '1';
  251. break;
  252. case '11':
  253. lab = '退款(退货)中';
  254. val = '11';
  255. break;
  256. case '12':
  257. lab = '已完成';
  258. val = '12';
  259. startRefundTime.removeAttr('disabled');
  260. endRefundTime.removeAttr('disabled');
  261. startRefundTime.val('${startRefundTime}');
  262. endRefundTime.val('${endRefundTime}');
  263. break;
  264. case '13':
  265. lab = '已取消';
  266. val = '13';
  267. break;
  268. default:
  269. }
  270. $("#orderRefundType").val(val);
  271. $('.refund-val').text(lab);
  272. $('body').click(function (e) {
  273. var target = $(e.target),
  274. opBlockEle = target.siblings('.operation-block');
  275. if ((target.is('.operation-btn') && opBlockEle.css('display') == 'block') ||
  276. (!target.is('.operation-block') && !target.is('.operation-btn'))) {
  277. $('.operation-block').hide();
  278. } else {
  279. $('.operation-block').hide();
  280. opBlockEle.show();
  281. }
  282. });
  283. $('.refund-selector').on('click', function () {
  284. var block1 = $('.refund-block1');
  285. if (block1.css('display') === 'none') {
  286. $('.refund-block1').show();
  287. }
  288. });
  289. $('.refund-options').on('click', function (e) {
  290. var val = $(this).text();
  291. $("#orderRefundType").val($(this).data('v'));
  292. var startRefundTime = $('#startRefundTime');
  293. var endRefundTime = $('#endRefundTime');
  294. if ($(this).data('v') == '12') {
  295. startRefundTime.removeAttr('disabled');
  296. endRefundTime.removeAttr('disabled');
  297. } else {
  298. startRefundTime.attr('disabled', 'disabled');
  299. endRefundTime.attr('disabled', 'disabled');
  300. startRefundTime.val('');
  301. endRefundTime.val('');
  302. }
  303. $('.refund-val').text(val);
  304. $('.refund-block1').hide();
  305. e.stopPropagation();
  306. })
  307. if ($(".operation-block").length > 0) {
  308. var length = $(".operation-block").length;
  309. for (var i = 0; i < length; i++) {
  310. var b = $(".operation-block").get(i);
  311. if ($(b).html().trim() == '') {
  312. $(b).hide();
  313. $(b).prev().hide();
  314. }
  315. }
  316. }
  317. });
  318. function page(n, s) {
  319. $("#pageNo").val(n);
  320. $("#pageSize").val(s);
  321. $("#searchForm").submit();
  322. return false;
  323. }
  324. // 二维码分享
  325. function QRCodewin(orderId, orderNo) {
  326. var html = '<div style="padding:10px;">订单号:' + orderNo + '' +
  327. '<div class="code" style="text-align: center;"></div>' +
  328. '</div>';
  329. $.jBox(html, {
  330. title: "订单二维码分享",
  331. width: $(top.document).width() - 1700,
  332. height: $(top.document).height() - 1600,
  333. buttons: {'关闭': true}
  334. });
  335. var enCodeRedirectUrl;
  336. var redirectUrl = '${fns:getConfig('caimei.crm.server')}oauth.action?orderId=' + orderId;
  337. $.ajax({
  338. url: "${ctx}/bulkpurchase/contractOrder/enCode",
  339. data: {"redirectUrl": redirectUrl},
  340. type: "POST",
  341. async: false,
  342. success: function (data) {
  343. enCodeRedirectUrl = data.enCodeRedirectUrl;
  344. }
  345. });
  346. var shareUrl = 'https://open.weixin.qq.com/connect/oauth2/authorize?appid=${fns:getConfig('weixin.appId')}&redirect_uri=' + enCodeRedirectUrl + '&response_type=code&scope=snsapi_base&state=bulkpurchase#wechat_redirect';
  347. $('.code').qrcode({
  348. width: 150,
  349. height: 150,
  350. text: shareUrl
  351. });
  352. }
  353. // 供应商链接
  354. function shareShopLink(shopOrderID) {
  355. var cpTxt = '${fns:getConfig('caimei.crm.server')}supplier/order/shopAuthorizedOrder.rpc?shopOrderID=' + shopOrderID;
  356. var html = '<div style="padding:10px;">' + cpTxt +
  357. '<div class="code" style="text-align: center;"></div>' +
  358. '</div>';
  359. $('#biao1').val(cpTxt);//设置值
  360. $.jBox(html, {
  361. title: "复制以下链接,可分享订单信息",
  362. width: $(top.document).width() - 1400,
  363. height: $(top.document).height() - 1600,
  364. buttons: {'复制': 1, '关闭': true},
  365. // buttons: { '关闭': true },
  366. submit: function (v, h, f) {
  367. if (v == 1) {
  368. copyUrl2()
  369. // alert("1")
  370. // window.clipboardData.setData("text" , cpTxt);
  371. }
  372. }
  373. });
  374. }
  375. // 终止备注信息
  376. function orderRemarkswin(orderStopRemarks) {
  377. var html = "<div style='padding:10px;'><textarea id='remarks' name='remarks' rows='5' cols='12' readonly='true'>" + orderStopRemarks + "</textarea></div>";
  378. $.jBox(html, {
  379. title: "备注",
  380. width: $(top.document).width() - 1600,
  381. height: $(top.document).height() - 1600,
  382. buttons: {'关闭': true}
  383. });
  384. }
  385. // 订单终止弹窗
  386. function orderStopwin(id, flag) {
  387. var html = "<div style='padding:10px;'><font color='red'>*</font>备注:<textarea id='remarks' name='remarks' rows='5' cols='12'></textarea></div>";
  388. var submit = function (v, h, f) {
  389. if (f.remarks == '') {
  390. $.jBox.tip("请输入您填写备注信息", 'error', {focusId: "remarks"});
  391. return false;
  392. }
  393. // $.jBox.tip("备注:" + f.remarks);
  394. location.href = "${ctx}/bulkpurchase/contractOrder/saveOrderStopInfo?id=" + id + "&flag=" + flag + "&orderStopRemarks=" + f.remarks;
  395. return true;
  396. };
  397. $.jBox(html, {title: "确认终止订单?", submit: submit});
  398. }
  399. // 未分期确认订单
  400. function openwin(id, flag) {
  401. var submit = function (v, h, f) {
  402. if (v == true) {
  403. location.href = "${ctx}/bulkpurchase/contractOrder/saveConfirmFlag?id=" + id + "&flag=" + flag;
  404. }
  405. return true;// close
  406. };
  407. // 自定义按钮
  408. $.jBox.confirm("客户已确认了吗?", "确认订单", submit, {buttons: {'确认': true, '取消': false}});
  409. }
  410. // 分期确认订单
  411. function stagesOpenwin(id, flag) {
  412. var submit = function (v, h, f) {
  413. if (v == true) {
  414. location.href = "${ctx}/bulkpurchase/contractOrder/saveStagesConfirmFlag?id=" + id + "&flag=" + flag;
  415. }
  416. return true;// close
  417. };
  418. // 自定义按钮
  419. $.jBox.confirm("确认此订单可以生成?", "确认订单", submit, {buttons: {'确认': true, '取消': false}});
  420. }
  421. //编辑经理折扣
  422. function modelShow(orderID) {
  423. top.$.jBox("iframe:${ctx}/order/DiscountFee?orderID=" + orderID, {
  424. iframeScrolling: 'yes',
  425. top: 150,
  426. width: 480,
  427. height: 300,
  428. persistent: true,
  429. title: "编辑经理折扣",
  430. buttons: {"确认": '1', "取消": '-1'},
  431. submit: function (v, h, f) {
  432. //确定
  433. var $jboxFrame = top.$('#jbox-iframe');
  434. var $mainFrame = top.$('#mainFrame');
  435. if ('1' == v && 1 == $jboxFrame.size() && 1 == $mainFrame.size()) {
  436. var rechargeInfo = $jboxFrame[0].contentWindow.submit();
  437. var split = rechargeInfo.split(",");
  438. var payTotalFee = split[0];
  439. var discountFee = split[1];
  440. //取值,然后调用后台接口传入参数,最后刷新页面
  441. if (payTotalFee <= 0) {
  442. return false;
  443. }
  444. $.post("${ctx}/order/saveDiscountFee", {
  445. 'discountFee': discountFee,
  446. 'orderID': orderID,
  447. 'payTotalFee': payTotalFee
  448. }, function (data) {
  449. if (true == data.success) {
  450. refresh();
  451. $.jBox.tip(data.msg, 'info', {timeout: 1000});
  452. } else {
  453. alertx(data.msg, 1000);
  454. }
  455. }, "JSON");//这里返回的类型有:json,html,xml,text
  456. }
  457. return true;
  458. }, loaded: function (h) { //隐藏滚动条
  459. $(".jbox-content", top.document).css("overflow-y", "hidden");
  460. }
  461. });
  462. }
  463. //订单商品备注
  464. function remarks(orderID, shopOrderID) {
  465. top.$.jBox("iframe:${ctx}/order/cmOrderRemark/remarksView?orderID=" + orderID + "&shopOrderID=" + shopOrderID, {
  466. iframeScrolling: 'yes',
  467. top: 150,
  468. width: 400,
  469. height: 480,
  470. persistent: true,
  471. title: "订单备注信息",
  472. buttons: {"确认": '1', "关闭": '-1'},
  473. submit: function (v, h, f) {
  474. //确定
  475. var $jboxFrame = top.$('#jbox-iframe');
  476. var $mainFrame = top.$('#mainFrame');
  477. if ('1' == v && 1 == $jboxFrame.size() && 1 == $mainFrame.size()) {
  478. var remarks = $jboxFrame[0].contentWindow.submit();
  479. // var arr = item.split(",");
  480. // var remarks = arr[0];
  481. if ('' == remarks) {
  482. alertx("备注信息不能为空!!!")
  483. return false;
  484. }
  485. saveRemarks(remarks, orderID, shopOrderID);
  486. return true;
  487. }
  488. return true;
  489. },
  490. loaded: function (h) { //隐藏滚动条
  491. $(".jbox-content", top.document).css("overflow-y", "hidden");
  492. }
  493. });
  494. }
  495. function saveRemarks(remarks, orderID, shopOrderID) {
  496. $.post("${ctx}/order/cmOrderRemark/addRemarks", {
  497. "remarks": remarks, "orderID": orderID, "shopOrderID": shopOrderID
  498. }, function (data) {
  499. if (true == data.success) {
  500. refresh();
  501. $.jBox.tip(data.msg, 'info');
  502. } else {
  503. $.jBox.tip(data.msg, 'error');
  504. }
  505. }, "JSON");//这里返回的类型有:json,html,xml,text
  506. }
  507. //修改订单状态弹窗
  508. function updateOrderStatus(orderId) {
  509. top.$.jBox("iframe:${ctx}/bulkpurchase/contractOrder/orderStatusEdit?orderId=" + orderId, {
  510. iframeScrolling: 'yes',
  511. top: 150,
  512. width: 400,
  513. height: 230,
  514. persistent: true,
  515. title: "更新订单状态",
  516. buttons: {"确认修改": '1', "关闭": '-1'},
  517. submit: function (v, h, f) {
  518. //确定
  519. var $jboxFrame = top.$('#jbox-iframe');
  520. var $mainFrame = top.$('#mainFrame');
  521. if ('1' == v && 1 == $jboxFrame.size() && 1 == $mainFrame.size()) {
  522. var item = $jboxFrame[0].contentWindow.submit();
  523. var arr = item.split(",");
  524. var orderStatus = arr[0];
  525. var updateDate = arr[1];
  526. if (updateDate == "") {
  527. alertx("时间不能为空!!!")
  528. return false;
  529. }
  530. saveOrderStatus(orderStatus, updateDate, orderId);
  531. return true;
  532. }
  533. return true;
  534. }
  535. });
  536. }
  537. function saveOrderStatus(orderStatus, updateDate, orderId) {
  538. $.post("${ctx}/bulkpurchase/contractOrder/saveOrderStatus", {
  539. 'orderStatus': orderStatus, "updateDate": updateDate, "orderId": orderId
  540. }, function (data) {
  541. if (true == data.success) {
  542. refresh();
  543. $.jBox.tip(data.msg, 'info');
  544. } else {
  545. $.jBox.tip(data.msg, 'error');
  546. }
  547. }, "JSON");//这里返回的类型有:json,html,xml,text
  548. }
  549. function refresh() {
  550. window.location.href = "${ctx}/hehe/new/order/orderList/";
  551. }
  552. function checkfun() {
  553. var orderID = $('#orderID').val();
  554. var reg = /^[0-9]*$/;
  555. if (!reg.test(orderID) && orderID.trim() != "") {
  556. alertx("请输入正确的订单ID!");
  557. // $('#orderID').val("");
  558. return false;
  559. }
  560. return true;
  561. }
  562. //抹平收款
  563. function collection(orderId) {
  564. $.post("${ctx}/order/gatheringData", {
  565. 'orderId': orderId
  566. }, function (data) {
  567. if (true == data.success) {
  568. var html = "<div id='auditBox'>" +
  569. "<P>确定抹平收款吗?抹平后该订单将变为已收款状态</p>" +
  570. "<P><span>订单金额:<b>¥" + Number(data.payTotalFee).toFixed(2) + "</b></span></p>" +
  571. "<P><span>应收金额:<b>¥" + Number(data.payableAmount).toFixed(2) + "</b><span style='color:#FF0000'>(账户余额抵扣: ¥<b>" + Number(data.balancePayFee).toFixed(2) + "</b>)</span></span></p>" +
  572. "<P><span>已收金额:<b>¥" + Number(data.associateAmount).toFixed(2) + "</b></span></p>" +
  573. "<div><div class='note-div'><span style='color:#FF0000'>*</span>备注</div></div>" +
  574. "<textarea name='auditNote' style='width: 100%;min-height:60px;'></textarea>" +
  575. "<div class='note-div' style='display: none' id='noteError'><span style='color:#FF0000'>请填写备注</span> </div>" +
  576. "</div>";
  577. $.jBox(html, {
  578. title: "确认提示", width: 500, height: 400, buttons: {"确定": '1', "取消": '-1'},
  579. submit: function (v, h, f) {
  580. if ('1' == v) {
  581. var content = document.getElementsByName("auditNote")[0].value;
  582. if (content == '' || content == null) {
  583. document.getElementById('noteError').style.display = 'block';
  584. return false;
  585. }
  586. $.post("${ctx}/order/smoothOutCollection", {
  587. 'orderID': orderId,
  588. 'balanceAccountsRemark': content
  589. });
  590. window.location.href = "${ctx}/order/detail?id=" + orderId;
  591. }
  592. }
  593. });
  594. } else {
  595. $.jBox.tip(data.msg, 'error');
  596. }
  597. }, "JSON");//这里返回的类型有:json,html,xml,text
  598. };
  599. </script>
  600. </head>
  601. <body>
  602. <textarea cols="20" rows="10" id="biao1"></textarea>
  603. <ul class="nav nav-tabs">
  604. <li class="active"><a href="${ctx}/hehe/new/order/orderList">订单列表</a></li>
  605. </ul>
  606. <sys:message content="${message}"/>
  607. <form:form id="searchForm" modelAttribute="newOrder" onsubmit="return checkfun()" action="${ctx}/hehe/new/order/orderList"
  608. method="post" class="breadcrumb form-search">
  609. <input id="pageNo" name="pageNo" type="hidden" value="${page.pageNo}"/>
  610. <input id="pageSize" name="pageSize" type="hidden" value="${page.pageSize}"/>
  611. <div class="ul-form">
  612. <div class="flex-wrap">
  613. <div class="item">
  614. <label>订单ID:</label>
  615. <form:input path="orderID" id="orderID" htmlEscape="false" maxlength="30" class="input-medium"/>
  616. </div>
  617. <div class="item">
  618. <label>订单类型:</label>
  619. <form:select path="collageFlag" class="select-ele input-medium required">
  620. <form:option value="" label="所有"/>
  621. <form:option value="0" label="独立订单"/>
  622. <form:option value="1" label="拼团订单"/>
  623. </form:select>
  624. </div>
  625. <div class="item">
  626. <label>订单编号:</label>
  627. <form:input path="orderNo" htmlEscape="false" maxlength="30" class="input-medium"/>
  628. </div>
  629. <div class="item">
  630. <label>买家:</label>
  631. <form:input path="buyer" maxlength="20" class="input-medium"/>
  632. </div>
  633. <div class="item">
  634. <label>收货人:</label>
  635. <form:input path="receiver" maxlength="20" class="input-medium"/>
  636. </div>
  637. <div class="item">
  638. <label>订单状态:</label>
  639. <form:select path="status" class="select-ele input-medium required">
  640. <form:option value="" label="所有"/>
  641. <form:options items="${fns:getDictList('order_status')}" itemLabel="label" itemValue="value"
  642. htmlEscape="false"/>
  643. </form:select>
  644. </div>
  645. <div class="item">
  646. <label>收款状态:</label>
  647. <form:select path="receiptStatus" class="select-ele input-medium required">
  648. <form:option value="" label="所有"/>
  649. <form:options items="${fns:getDictList('receiptStatus')}" itemLabel="label" itemValue="value"
  650. htmlEscape="false"/>
  651. </form:select>
  652. </div>
  653. <div class="item">
  654. <label>拼团状态:</label>
  655. <form:select path="collageStatus" class="select-ele input-medium required">
  656. <form:option value="" label="所有"/>
  657. <form:option value="1" label="拼团中"/>
  658. <form:option value="2" label="已拼成"/>
  659. </form:select>
  660. </div>
  661. <div class="item">
  662. <label>发货状态:</label>
  663. <form:select path="sendOutStatus" class="select-ele input-medium required">
  664. <form:option value="" label="所有"/>
  665. <form:options items="${fns:getDictList('sendOutStatus')}" itemLabel="label" itemValue="value"
  666. htmlEscape="false"/>
  667. </form:select>
  668. </div>
  669. <div class="item">
  670. <label>付款状态:</label>
  671. <form:select path="payStatus" class="select-ele input-medium required">
  672. <form:option value="" label="所有"/>
  673. <form:options items="${fns:getDictList('payStatus')}" itemLabel="label" itemValue="value"
  674. htmlEscape="false"/>
  675. </form:select>
  676. </div>
  677. <div class="item">
  678. <label>退款状态:</label>
  679. <form:select path="refundType" class="select-ele input-medium required">
  680. <form:option value="" label="所有"/>
  681. <form:option value="0" label="无退款"/>
  682. <form:option value="1" label="部分退款"/>
  683. <form:option value="2" label="已退款"/>
  684. </form:select>
  685. </div>
  686. <div class="item">
  687. <label>待审核退款:</label>
  688. <form:select path="returnedPurchaseStatus" class="select-ele input-medium required">
  689. <form:option value="" label="所有"/>
  690. <form:option value="1" label="有"/>
  691. <form:option value="0" label="无"/>
  692. </form:select>
  693. </div>
  694. <div class="item">
  695. <label>分销者:</label>
  696. <form:select path="userID" class="select-ele input-medium required">
  697. <form:option value="" label="所有"/>
  698. <form:options items="${heUsers}" itemLabel="name" itemValue="userId" htmlEscape="false"/>
  699. </form:select>
  700. </div>
  701. <div class="item">
  702. <label class="control-label">下单时间:</label>
  703. <form:input path="startTime" type="text" maxlength="10" class="input-medium Wdate" value="${startTime}"
  704. onclick="WdatePicker({dateFmt:'yyyy-MM-dd ',isShowClear:false});"/>
  705. <form:input path="endTime" type="text" maxlength="10" class="input-medium Wdate" value="${endTime}"
  706. onclick="WdatePicker({dateFmt:'yyyy-MM-dd ',isShowClear:false});"/>
  707. </div>
  708. <div class="item">
  709. <input id="btnSubmit" class="btn btn-primary" type="submit" value="查询" style="margin-left: 20px;"/>
  710. </div>
  711. </div>
  712. </div>
  713. </form:form>
  714. <fmt:formatDate value="<%=new Date()%>" var="currDate" pattern="yyyy-MM-dd"/>
  715. <fmt:formatDate value="<%=new Date()%>" var="monthFirst" pattern="yyyy-MM-01"/>
  716. <div class="data-title">
  717. <ul>
  718. <li>订单ID</li>
  719. <li>订单类型</li>
  720. <li>订单编号</li>
  721. <li>买家</li>
  722. <li>收货人</li>
  723. <li>订单状态</li>
  724. <li>收款状态</li>
  725. <li>拼团状态</li>
  726. <li>付款状态</li>
  727. <li>发货状态</li>
  728. <li>退款状态</li>
  729. <li>待审核退款</li>
  730. <li>订单金额</li>
  731. <li>下单时间</li>
  732. <li>操作</li>
  733. </ul>
  734. <c:forEach items="${page.list}" var="order">
  735. <%--颜色区分分期不分期订单以及终止订单--%>
  736. <ul class="spileOrder" data-id="${order.orderNo}">
  737. <li>${order.orderID}</li>
  738. <li>
  739. ${order.collageFlag eq 1?'拼团订单':'独立订单'}
  740. </li>
  741. <li style="position: relative">${order.orderNo}
  742. </li>
  743. <li>
  744. ${order.buyer}
  745. </li>
  746. <li>${order.receiver}</li>
  747. <li class="sd-li">
  748. <c:if test="${order.status eq 11 || order.status eq 12 || order.status eq 13 ||order.status eq 21 ||order.status eq 22 ||
  749. order.status eq 23 || order.status eq 31 ||order.status eq 32 ||order.status eq 33}">
  750. 交易中<br>(${fns:getDictLabel(order.status,"order_detail_status","" )})
  751. </c:if>
  752. <c:if test="${order.status eq 0 || order.status eq 4 || order.status eq 5 || order.status eq 6 || order.status eq 7}">${fns:getDictLabel(order.status,"order_detail_status","" )}</c:if>
  753. </li>
  754. <li>
  755. <c:if test="${order.receiptStatus == 1}">
  756. <font color="red">待收款</font>
  757. </c:if>
  758. <c:if test="${order.receiptStatus == 2}">
  759. <font color="#ff8c00">部分收款</font>
  760. </c:if>
  761. <c:if test="${order.receiptStatus == 3}">
  762. <font color="green">已收款</font>
  763. </c:if>
  764. <br>
  765. <%--抹平明细--%>
  766. <c:if test="${order.confirmType eq 1}">
  767. <c:if test="${order.receiptOrderFlag}">
  768. 一款多单:少收抹平金额未知
  769. </c:if>
  770. <c:if test="${!order.receiptOrderFlag}">
  771. <font>少收抹平:<br>
  772. ¥<fmt:formatNumber
  773. value="${order.payableAmount - (empty order.orderReceivedAmount ? 0 : order.orderReceivedAmount)}"
  774. pattern="#0.00"/>
  775. </font>
  776. </c:if>
  777. </c:if>
  778. <c:if test="${order.confirmType eq 2}">
  779. <c:if test="${order.receiptOrderFlag}">
  780. 一款多单:多收抹平金额未知
  781. </c:if>
  782. <c:if test="${!order.receiptOrderFlag}">
  783. <font>多收抹平:<br>
  784. ¥<fmt:formatNumber
  785. value="${(empty order.orderReceivedAmount ? 0 : order.orderReceivedAmount) - order.payableAmount}"
  786. pattern="#0.00"/>
  787. </font>
  788. </c:if>
  789. </c:if>
  790. <c:if test="${order.confirmType eq 3}">
  791. <c:if test="${order.receiptOrderFlag}">
  792. 一款多单:多收退余额
  793. </c:if>
  794. <c:if test="${!order.receiptOrderFlag}">
  795. <font>多收退余额&nbsp;&nbsp;${order.associationType eq 2 ? "(自动)" : ""}:<br>
  796. ¥<fmt:formatNumber
  797. value="${(empty order.returnBalanceAmount ? 0 : order.returnBalanceAmount)}"
  798. pattern="#0.00"/>
  799. </font>
  800. </c:if>
  801. </c:if>
  802. </li>
  803. <li>
  804. <c:choose>
  805. <c:when test="${order.collageFlag eq 1 && (order.status eq 31 || order.status eq 32 || order.status eq 33)}">
  806. <font color="${order.collageStatus eq 1?'#00CC66':(order.collageStatus eq 2?'red':'')}">
  807. ${order.collageStatus eq 1?'拼团中':(order.collageStatus eq 2?'已拼成':'-')}
  808. </font>
  809. </c:when>
  810. <c:otherwise>
  811. -
  812. </c:otherwise>
  813. </c:choose>
  814. </li>
  815. <li>
  816. <c:if test="${order.payStatus == 1}">
  817. 待付款
  818. </c:if>
  819. <c:if test="${order.payStatus == 2}">
  820. 部分付款
  821. </c:if>
  822. <c:if test="${order.payStatus == 3}">
  823. 已付款
  824. </c:if>
  825. </li>
  826. <li>
  827. <c:if test="${order.sendOutStatus == 1}">
  828. 待发货
  829. </c:if>
  830. <c:if test="${order.sendOutStatus == 2}">
  831. 部分发货
  832. </c:if>
  833. <c:if test="${order.sendOutStatus == 3}">
  834. 已发货
  835. </c:if>
  836. </li>
  837. <li>
  838. <c:if test="${order.refundType == 1}">
  839. 部分退款
  840. </c:if>
  841. <c:if test="${order.refundType == 2}">
  842. 已退款
  843. </c:if>
  844. <c:if test="${order.refundType ne 1 and order.refundType ne 2 }">
  845. 无退款
  846. </c:if>
  847. </li>
  848. <li>
  849. <c:if test="${order.returnedPurchaseStatus == 1}">
  850. <a href="${ctx}/bulkpurchase/cmRefundsProduct/toRecturnRecordByOrderID.rpc?orderID=${order.orderID}">
  851. </a>
  852. </c:if>
  853. <c:if test="${order.returnedPurchaseStatus == 0}">
  854. </c:if>
  855. </li>
  856. <li><fmt:formatNumber value="${order.payTotalFee}" type="currency"/></li>
  857. <%-- 订单金额 --%>
  858. <li>${order.orderTime}</li>
  859. <li class="operation-wrap">
  860. <a href="${ctx}/hehe/new/order/detail?id=${order.orderID}">查看详情</a>
  861. <a class="operation-btn">功能</a>
  862. <div class="operation-block">
  863. <shiro:hasPermission name="order:order:edit">
  864. <%--包含订单充值商品就不显示--%>
  865. <c:if test="${empty order.rechargeGoods}">
  866. <c:if test="${order.status == 11 || order.status == 12 || order.status == 21 || order.status == 22 || order.status == 31 || order.status == 32}">
  867. <a href="${ctx}/order/toDeliveryPage?id=${order.orderID}">发货</a>
  868. </c:if>
  869. <c:if test="${order.receiptStatus == 2 && order.status != 6 && order.status != 7}">
  870. <a href="javascript:void(0);" onclick="collection(${order.orderID})">抹平收款</a>
  871. </c:if>
  872. </c:if>
  873. <c:if test="${(order.organizeID == 0 or order.organizeID > 2) && order.status == 11 && order.payStatus == 1}">
  874. <a href="javascript:void(0);"
  875. onclick="modelShow('${order.orderID}')">编辑经理折扣</a>
  876. </c:if>
  877. </shiro:hasPermission>
  878. <shiro:hasPermission name="order:order:applyrefound">
  879. <c:if test="${order.status == 12 || order.status == 13 || order.status == 21 || order.status == 22 || order.status == 23 || order.status == 31 || order.status == 32 || order.status == 33 || order.status == 4 || order.status == 5}">
  880. <%-- 返佣订单不能申请退款(退货) --%>
  881. <c:if test="${order.rebateOrder == '0'}">
  882. <%--如果存在审核收款则不允许申请:1不能申请,其它可以申请--%>
  883. <c:if test="${order.toAudit eq 1}">
  884. <%--弹窗提示--%>
  885. <a href="#" onclick="return alertx('订单存在未审核的收款,暂不能退款。请将收款审核通过后再操作退款。')">申请退款</a>
  886. </c:if>
  887. <c:if test="${order.toAudit ne 1}">
  888. <%--如果存在退款记录在待审核或者审核不通过记录不允许继续退款--%>
  889. <c:if test="${order.applyReturnedPurchaseFlag eq 1}">
  890. <a href="${ctx}/bulkpurchase/cmRefundsProduct/applyRefound.rpc?orderID=${order.orderID}"
  891. <c:if test="${order.status == 21 || order.status == 22 || order.status == 23}">onclick="return confirmx('部分收款的订单、申请退款只能申请全部退款!', this.href)"
  892. </c:if>
  893. >
  894. 申请退款
  895. </a>
  896. </c:if>
  897. <c:if test="${order.applyReturnedPurchaseFlag ne 1}">
  898. <font title="存在未处理完的申请,请前往退款列表处理!">申请退款</font>
  899. </c:if>
  900. </c:if>
  901. </c:if>
  902. </c:if>
  903. </shiro:hasPermission>
  904. <shiro:hasPermission name="order:order:edit">
  905. <c:if test="${order.status ne 0}">
  906. <a href="${ctx}/order/printOrder?orderID=${order.orderID}">打印发货单</a>
  907. </c:if>
  908. <%--<a href="/">供应商链接</a>--%>
  909. <a href="${ctx}/order/exportOrder?id=${order.orderID}">订单导出</a>
  910. <a href="${ctx}/order/cmOrderRemark/remarksViewNew.rpc?orderID=${order.orderID}&source=1&orderType=2">订单备注</a>
  911. <%--包含订单充值商品就不显示--%>
  912. <c:if test="${empty order.rechargeGoods}">
  913. <c:if test="${order.status ne 0 && order.status ne 11 && order.status ne 21 && order.status ne 6 && order.status ne 4}">
  914. <a href="${ctx}/order/logisticsDetails?orderID=${order.orderID}&orderType=2">发货记录</a>
  915. </c:if>
  916. <c:if test="${order.status ne 0 && order.status ne 11 && order.status ne 6}">
  917. <a href="${ctx}/bulkpurchase/cmRefundsProduct/toRefundRecord.rpc?orderID=${order.orderID}&from=1">收退款记录
  918. </a>
  919. </c:if>
  920. <c:if test="${order.status ne 0 && order.status ne 11 && order.status ne 6}">
  921. <a href="${ctx}/bulkpurchase/cmRefundsProduct/toRecturnRecordByOrderID.rpc?orderID=${order.orderID}">退款(退货)记录
  922. </a>
  923. </c:if>
  924. </c:if>
  925. </shiro:hasPermission>
  926. </div>
  927. </li>
  928. </ul>
  929. </c:forEach>
  930. </div>
  931. <div class="pagination">${page}</div>
  932. </body>
  933. </html>