applyRefoundForm.jsp 53 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939
  1. <%@ taglib prefix="from" uri="http://www.springframework.org/tags/form" %>
  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>
  9. .form-horizontal .controls{margin-left:0}
  10. #increase,#decrease,.lineNum{width:30px;height:30px}
  11. .lineNum{text-align:center}
  12. .dateInput input{width:150px}
  13. .clause span{margin-left:30px}
  14. #productTable th{text-align:center;white-space:nowrap}
  15. #productTable td{text-align:center;white-space:nowrap}
  16. .controls{font-size:0}
  17. .controls .conList{display:inline-block;margin-right:15px}
  18. .conList .btn:nth-of-type(1){margin-left:25px}
  19. .select2-choice{width:100px}
  20. .upload-content{margin-top:-70px;display:inline-block}
  21. .upload-content .conList .btn:nth-of-type(1){width:90px;height:100px;border:1px solid #eee;background:#fff;position:relative}
  22. .upload-content .conList .btn:nth-of-type(1)>div{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#666}
  23. .upload-content .conList .btn:nth-of-type(1) span{font-size:35px}
  24. .upload-content .conList .btn:nth-of-type(1) h5{color:#666}
  25. .cancel-upload{background:transparent;border:none;box-shadow:none;position:relative;top:-38px;left:-25px;cursor:pointer;z-index:100}
  26. .upload-content .conList ol li{width:114px;min-height:80px;text-align:center;background:#fff;position:relative;top:120px}
  27. .hide-pic{display:none !important}
  28. .upload-tips{margin:10px 0}
  29. .weishaIcon {background:darkorange;color:white;margin:0 0px;padding:0 3px;font-style:normal;font-size: 12px; display:inline-block;border-radius:2px}
  30. </style>
  31. <script type="text/javascript">
  32. $(document).ready(function () {
  33. $("#name").focus();
  34. $("#inputForm").validate({
  35. submitHandler: function (form) {
  36. //线下转账
  37. if (${!returnOnline}){
  38. //判断退款金额是否和填写金额总和一致
  39. var obj = document.getElementsByName("returnedWay");
  40. var checked0 = obj[0].checked;
  41. var checked1 = obj[1].checked;
  42. if(!checked1 && !checked0){
  43. alertx("请选择退款方式");
  44. return;
  45. }
  46. var totalFee = 0;
  47. if(checked0) {
  48. var refundOfflineFee = $('#refundOfflineFee').val();
  49. if (refundOfflineFee == null || refundOfflineFee == "") {
  50. alertx("请填写线下转账退款数");
  51. return;
  52. } else {
  53. totalFee = parseFloat(refundOfflineFee) + totalFee;
  54. }
  55. //判断银行信息
  56. var bankAccountName = $('#bankAccountName').val();
  57. var bankAccountNo = $('#bankAccountNo').val();
  58. var openBank = $('#openBank').val();
  59. if (bankAccountName == null || bankAccountName == "") {
  60. alertx("请填写开户名");
  61. return;
  62. }
  63. if (bankAccountNo == null || bankAccountNo == "") {
  64. alertx("请填写开户账号");
  65. return;
  66. }
  67. if (openBank == null || openBank == "") {
  68. alertx("请填写开户行");
  69. return;
  70. }
  71. }
  72. if(checked1){
  73. var refundBalanceFee = $('#refundBalanceFee').val();
  74. if( refundBalanceFee == null || refundBalanceFee == ""){
  75. alertx("请填写账户余额退款数");
  76. return;
  77. }else{
  78. totalFee = parseFloat(refundBalanceFee) + totalFee;
  79. }
  80. }
  81. var refundFee = $(".refundFee").text();
  82. if(refundFee == "" || refundFee == null){
  83. refundFee = 0;
  84. }
  85. refundFee = parseFloat(refundFee);
  86. var number = refundFee - totalFee;
  87. if(number > 0.1 || number < -0.1){
  88. alertx("各退款方式的金额之和不等于退款总金额,请重新计算后再提交申请");
  89. return;
  90. }
  91. if (${cmDiscernReceipt.payWay eq 1}) {
  92. var businessNumber = $(".businessNumber").eq(0).text();
  93. if (businessNumber.length > 0) {
  94. if (checked0 && checked1){
  95. alertx("本订单为线上支付订单,由于您申请退到余额和线下转账,请在一天后联系开通了线上分账商户号的供应商" +
  96. "退回相应付款金额。确定付款情况请到付款管理页面查看。");
  97. }else if (checked0){
  98. alertx("本订单为线上支付订单,由于您申请线下转账,请在一天后联系开通了线上分账商户号的供应商" +
  99. "退回相应付款金额。确定付款情况请到付款管理页面查看。");
  100. }else {
  101. alertx("本订单为线上支付订单,由于您申请退到余额,请在一天后联系开通了线上分账商户号的供应商" +
  102. "退回相应付款金额。确定付款情况请到付款管理页面查看。");
  103. }
  104. }
  105. }
  106. }else if (${returnOnline}){
  107. var obj = document.getElementsByName("returnedWay");
  108. var checked0 = obj[0].checked;
  109. var checked1 = obj[1].checked;
  110. if(!checked1 && !checked0){
  111. alertx("请选择退款方式");
  112. return;
  113. }
  114. var businessNumber = $(".businessNumber").eq(0).text();
  115. if (businessNumber.length > 0 && checked1) {
  116. alertx("本订单为线上支付订单,由于您申请退到余额,请在一天后联系开通了线上分账商户号的供应商" +
  117. "退回相应付款金额。确定付款情况请到付款管理页面查看。");
  118. }
  119. }
  120. $.jBox("本次退款(退货)操作后,需等待财务审核,确定进行本次操作吗?", {
  121. title: "提示",
  122. width: $(top.document).width() - 1550,
  123. height: $(top.document).height()-1400,
  124. buttons: { '确定':1 , '关闭': 2 },
  125. submit: function (v, h, f) {
  126. if (v == 1) {
  127. loading('正在提交,请稍等...');
  128. form.submit();
  129. }else{
  130. return;
  131. }
  132. }
  133. });
  134. },
  135. errorContainer: "#messageBox",
  136. errorPlacement: function (error, element) {
  137. $("#messageBox").text("输入有误,请先更正。");
  138. if (element.is(":checkbox") || element.is(":radio") || element.parent().is(".input-append")) {
  139. error.appendTo(element.parent().parent());
  140. } else {
  141. error.insertAfter(element);
  142. }
  143. }
  144. });
  145. });
  146. /**
  147. * @param obj
  148. * jquery控制input只能输入数字和两位小数
  149. */
  150. function num(obj) {
  151. obj.value = obj.value.replace(/[^\d.]/g, ""); //清除"数字"和"."以外的字符
  152. obj.value = obj.value.replace(/^\./g, ""); //验证第一个字符是数字
  153. obj.value = obj.value.replace(/\.{2,}/g, "."); //只保留第一个, 清除多余的
  154. obj.value = obj.value.replace(".", "$#$").replace(/\./g, "").replace("$#$", ".");
  155. obj.value = obj.value.replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3'); //只能输入两个小数
  156. }
  157. function showBankInfo() {
  158. if (${!returnOnline}){
  159. var obj = document.getElementsByName("returnedWay"),
  160. blockEle = $('.refund-details-block');
  161. if(obj){
  162. if(obj[0].checked){
  163. //显示银行信息
  164. blockEle.show();
  165. } else {
  166. blockEle.hide();
  167. }
  168. }
  169. }
  170. }
  171. </script>
  172. </head>
  173. <body>
  174. <input type="hidden" id="product_index" value="${fn:length(order.orderProduct)}">
  175. <input type="hidden" id="ctx" value="${ctx}">
  176. <ul class="nav nav-tabs">
  177. <c:if test="${order.orderType eq 2}">
  178. <li><a href="${ctx}/hehe/new/order/orderList">订单列表</a></li>
  179. </c:if>
  180. <c:if test="${order.orderType ne 2}">
  181. <li><a href="${ctx}/order/orderList">订单列表</a></li>
  182. </c:if>
  183. <li class="active"><a href="${ctx}/bulkpurchase/cmRefundsProduct/applyRefound.rpc?orderID=${order.orderID}&id=${cmReturnedPurchase.id}">申请退货</a></li>
  184. </ul>
  185. <br/>
  186. <form:form id="inputForm" modelAttribute="cmReturnedPurchase" action="${ctx}/bulkpurchase/cmRefundsProduct/saveRefound" method="post"
  187. class="form-horizontal">
  188. <form:hidden path="orderID" value="${order.orderID}"/>
  189. <form:hidden path="userID" value="${order.userID}"/>
  190. <form:hidden path="id" value="${cmReturnedPurchase.id}"/>
  191. <%--订单收款状态:1待收款,2部分收款,3已收款--%>
  192. <input type="hidden" id="receiptStatus" value="${order.receiptStatus}"/>
  193. <%--订单已支付金额(包括余额支付金额)--%>
  194. <input type="hidden" id="paidAmount" value="${empty order.paidAmount? 0:order.paidAmount}"/>
  195. <%--订单经理折扣费用--%>
  196. <input type="hidden" id="discountFee" value="${empty order.discountFee? 0:order.discountFee}"/>
  197. <%--订单退款已退的经理折扣金额--%>
  198. <input type="hidden" id="totalDiscount" value="${empty order.totalDiscount? 0:order.totalDiscount}"/>
  199. <input type="hidden" id="orderStatus" value="${fns:isNotPay(order.status)}">
  200. <input type="hidden" id="isBuFenFaHuo" value="${fns:isBuFenShouKuan(order.status)}">
  201. <sys:message content="${message}"/>
  202. <table id="contentTable" class="table table-striped table-bordered table-condensed">
  203. <tr>
  204. <td colspan="2">
  205. <b>申请信息</b>
  206. </td>
  207. </tr>
  208. <tr>
  209. <td>退款备注</td>
  210. <td>
  211. <textarea id='remarks' name='remarks' rows='4' cols='50' style="width: 709px" maxlength="200" >${cmReturnedPurchase.remarks}</textarea>
  212. </td>
  213. </tr>
  214. <tr>
  215. <td>上传凭证</td>
  216. <td>
  217. <div class="controls upload-content" id="remarkImageBox">
  218. <div class="conList">
  219. <form:hidden id="image1" path="image1" htmlEscape="false" maxlength="255" class="input-xlarge required"/>
  220. <sys:ckfinder input="image1" type="images" uploadPath="/photo" selectMultiple="false" maxWidth="100" maxHeight="100"/>
  221. </div>
  222. <div class="conList hide-pic">
  223. <form:hidden id="image2" path="image2" htmlEscape="false" maxlength="255" class="input-xlarge required"/>
  224. <sys:ckfinder input="image2" type="images" uploadPath="/photo" selectMultiple="false" maxWidth="100" maxHeight="100"/>
  225. </div>
  226. <div class="conList hide-pic">
  227. <form:hidden id="image3" path="image3" htmlEscape="false" maxlength="255" class="input-xlarge required"/>
  228. <sys:ckfinder input="image3" type="images" uploadPath="/photo" selectMultiple="false" maxWidth="100" maxHeight="100"/>
  229. </div>
  230. <div class="conList hide-pic">
  231. <form:hidden id="image4" path="image4" htmlEscape="false" maxlength="255" class="input-xlarge required"/>
  232. <sys:ckfinder input="image4" type="images" uploadPath="/photo" selectMultiple="false" maxWidth="100" maxHeight="100"/>
  233. </div>
  234. <div class="conList hide-pic">
  235. <form:hidden id="image5" path="image5" htmlEscape="false" maxlength="255" class="input-xlarge required"/>
  236. <sys:ckfinder input="image5" type="images" uploadPath="/photo" selectMultiple="false" maxWidth="100" maxHeight="100"/>
  237. </div>
  238. </div>
  239. <div class="conList upload-tips">
  240. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="red">注意:请上传jpg / png格式的图片,最大不超过5M,最多可上传5张</font>
  241. </div>
  242. </td>
  243. </tr>
  244. </table>
  245. <table id="contentTable" class="table table-striped table-bordered table-condensed">
  246. <tr>
  247. <td><b>退款编号:</b>
  248. ${empty returnedNo?'':(returnedNo)}
  249. </td>
  250. <td><b>申请时间:</b>
  251. ${returnTime}
  252. </td>
  253. <td><b>申请金额:</b>
  254. <span class="refundFee"><fmt:formatNumber value="${empty cmReturnedPurchase.refundFee?'0.00':(cmReturnedPurchase.refundFee)}" pattern="#0.00"/></span>元
  255. </td>
  256. <td><b>退款状态:</b>
  257. <c:if test="${empty status}">
  258. 待申请
  259. </c:if>
  260. <c:if test="${ not empty status}">
  261. <c:if test="${status eq 1}">
  262. 待审核
  263. </c:if>
  264. <c:if test="${status eq 2}">
  265. 审核通过
  266. </c:if>
  267. <c:if test="${status eq 3}">
  268. 审核不通过
  269. </c:if>
  270. </c:if>
  271. </td>
  272. </tr>
  273. <tr>
  274. <td colspan="4">
  275. <b>退款方式:</b>
  276. <c:if test="${order.receiptStatus eq 1}">无支付无退款</c:if>
  277. <c:if test="${order.receiptStatus ne 1}">
  278. <c:if test="${returnOnline}">
  279. <input class="check-item-review refundOnlineFee" type="radio" name="returnedWay" value='2'/>
  280. 线上退回
  281. <c:if test="${empty order.rechargeGoods && order.organizeID eq 0}">
  282. <input class="check-item-review refundBalanceFee" type="radio" name="returnedWay" value='1'/>
  283. 账户余额
  284. </c:if>
  285. </c:if>
  286. <c:if test="${!returnOnline}">
  287. <input class="check-item-review refundOfflineFee" type="checkbox" name="returnedWay" value='3' onclick="showBankInfo()"/>
  288. 线下转账
  289. <from:input path="refundOfflineFee" onkeyup="num(this)" placeholder="¥0.00" value="${empty cmReturnedPurchase.refundOfflineFee?'':(cmReturnedPurchase.refundOfflineFee)}"></from:input>
  290. <c:if test="${empty order.rechargeGoods && order.organizeID eq 0}">
  291. <input class="check-item-review refundBalanceFee" type="checkbox" name="returnedWay" value='1'/>
  292. 账户余额
  293. <from:input path="refundBalanceFee" onkeyup="num(this)" placeholder="¥0.00" value="${empty cmReturnedPurchase.refundBalanceFee?'':(cmReturnedPurchase.refundBalanceFee)}"></from:input>
  294. </c:if>
  295. </c:if>
  296. <br>
  297. <div class="refund-details-block">
  298. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  299. <font color="red">*</font>开户名:;&nbsp;&nbsp;&nbsp;&nbsp;
  300. <from:input path="bankAccountName" value="${empty cmReturnedPurchase.bankAccountName?'':(cmReturnedPurchase.bankAccountName)}"></from:input>
  301. <font color="red">*</font>账号:
  302. <from:input path="bankAccountNo" value="${empty cmReturnedPurchase.bankAccountNo?'':(cmReturnedPurchase.bankAccountNo)}"></from:input>
  303. <%--<br>&nbsp;&nbsp;&nbsp;&nbsp;--%>
  304. <font color="red">*</font>开户行:
  305. <from:input path="openBank" value="${empty cmReturnedPurchase.openBank?'':(cmReturnedPurchase.openBank)}"></from:input>
  306. <font color="red">*</font>账户类型:
  307. <select name="bankAccountType" id="bankAccountType">
  308. <option value="" selected>请选择</option>
  309. <option value="1" <c:if test="${not empty cmReturnedPurchase.bankAccountType && cmReturnedPurchase.bankAccountType eq 1}"> selected="selected"</c:if>>公账</option>
  310. <option value="2" <c:if test="${not empty cmReturnedPurchase.bankAccountType && cmReturnedPurchase.bankAccountType eq 2}"> selected="selected"</c:if>>私账</option>
  311. </select>
  312. </div>
  313. </c:if>
  314. </td>
  315. </tr>
  316. </table>
  317. <table id="orderTable" class="table table-striped table-bordered table-condensed">
  318. <thead>
  319. </thead>
  320. <tr>
  321. <td>
  322. 订单编号(ID):${order.orderNo}(${order.orderID})
  323. </td>
  324. <td>
  325. 下单时间:${order.orderTime}
  326. </td>
  327. <td colspan="2">
  328. 订单状态:
  329. <c:if test="${order.status eq 11 || order.status eq 12 || order.status eq 13 ||order.status eq 21 ||order.status eq 22 ||
  330. order.status eq 23 || order.status eq 31 ||order.status eq 32 ||order.status eq 33}">交易中(${fns:getDictLabel(order.status,"order_detail_status","" )})</c:if>
  331. <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>
  332. </td>
  333. </tr>
  334. <tr>
  335. <td>
  336. 订单金额:¥<fmt:formatNumber type="number" value="${order.payTotalFee}" pattern="0.00" maxFractionDigits="2" />
  337. </td>
  338. <td>
  339. 应收总额:¥<fmt:formatNumber type="number" value="${order.payableAmount}" pattern="0.00" maxFractionDigits="2" />(账户余额抵扣:${order.balancePayFee})
  340. <a href="${ctx}/order/cmDiscernReceipt/detail?id=${lastReceiptDetailId}" style="text-decoration: underline;margin-left: 20px">查看订单收款情况</a>
  341. </td>
  342. <td>
  343. 经理折扣:¥<fmt:formatNumber type="number" value="${order.discountFee}" pattern="0.00" maxFractionDigits="2" />
  344. </td>
  345. <td>
  346. 运费:
  347. <c:if test="${order.freight == 0}">
  348. 包邮
  349. </c:if>
  350. <c:if test="${order.freight == -1}">
  351. 到付
  352. </c:if>
  353. <c:if test="${order.freight == -2}">
  354. 仪器到付-产品包邮
  355. </c:if>
  356. <c:if test="${order.freight != -1 && order.freight != 0 && order.freight != -2}">
  357. <fmt:formatNumber value="${order.freight}" type="currency"/>
  358. </c:if>
  359. </td>
  360. </tr>
  361. <tr>
  362. <td>
  363. 收款状态:
  364. <c:if test="${order.receiptStatus == 1}">
  365. <font color="red">待收款</font>
  366. </c:if>
  367. <c:if test="${order.receiptStatus == 2}">
  368. <font color="#ff8c00">部分收款</font>
  369. </c:if>
  370. <c:if test="${order.receiptStatus == 3}">
  371. <font color="green">已收款</font>
  372. </c:if></td>
  373. </td>
  374. <td>
  375. 发货状态:
  376. <c:if test="${order.sendOutStatus == 1}">
  377. <font color="red">待发货</font>
  378. </c:if>
  379. <c:if test="${order.sendOutStatus == 2}">
  380. <font color="#ff8c00">部分发货</font>
  381. </c:if>
  382. <c:if test="${order.sendOutStatus == 3}">
  383. <font color="green">已发货</font>
  384. </c:if></td>
  385. </td>
  386. <td>
  387. 付款状态:
  388. <c:if test="${order.payStatus == 1}">
  389. <font color="red">待付款</font>
  390. </c:if>
  391. <c:if test="${order.payStatus == 2}">
  392. <font color="#ff8c00">部分付款</font>
  393. </c:if>
  394. <c:if test="${order.payStatus == 3}">
  395. <font color="green">已付款</font>
  396. </c:if></td>
  397. </td>
  398. <td>
  399. 退款状态:
  400. <c:if test="${empty order.refundType}">
  401. <font>无退款</font>
  402. </c:if>
  403. <c:if test="${order.refundType == 1}">
  404. <font color="#ff8c00">部分退款</font>
  405. </c:if>
  406. <c:if test="${order.refundType == 2}">
  407. <font color="green">已退款</font>
  408. </c:if></td>
  409. </td>
  410. </tr>
  411. <tr>
  412. <td>
  413. 机构:${order.buyer}<c:if test="${order.organizeID == 3}"><em class="weishaIcon">维沙</em></c:if>
  414. </td>
  415. <td>
  416. 收货人:${order.bpOrderUserinfo.shouHuoRen}(${order.bpOrderUserinfo.mobile})
  417. </td>
  418. <td colspan="2">
  419. 地址:${order.bpOrderUserinfo.province}${order.bpOrderUserinfo.city}${order.bpOrderUserinfo.town}${order.bpOrderUserinfo.address}
  420. </td>
  421. </tr>
  422. </table>
  423. <c:forEach items="${order.newShopOrders}" var="shopOrder" varStatus="status">
  424. <c:if test="${!shopOrder.defaultStatus}">
  425. <table id="shopOrderTable${status.index}" class="table shopOrderTable table-striped table-bordered table-condensed">
  426. <thead></thead>
  427. <tr>
  428. <td style="width: 300px;">
  429. 子订单号(ID):${shopOrder.shopOrderNo}(${shopOrder.shopOrderID})
  430. </td>
  431. <td style="width: 275px;">
  432. 子订单金额:¥<fmt:formatNumber type="number" value="${shopOrder.totalAmount}" pattern="0.00" maxFractionDigits="2" />
  433. </td>
  434. <td>
  435. 发货状态:${fns:getDictLabel(shopOrder.sendOutStatus,'sendOutStatus' ,'' )}
  436. </td>
  437. <td>
  438. 付款状态:${fns:getDictLabel(shopOrder.payStatus,'payStatus' ,'' )}
  439. </td>
  440. <td>
  441. 供应商:${shopOrder.shopName} &nbsp;&nbsp;
  442. <c:if test="${not empty shopOrder.commercialCode}">
  443. <font color="red" class="businessNumber">(商户号:&nbsp;&nbsp;${shopOrder.commercialCode})</font>
  444. </c:if>
  445. </td>
  446. </tr>
  447. <c:forEach items="${shopOrder.newOrderProducts}" var="newOrderProduct" varStatus="productStatus">
  448. <tr>
  449. <td colspan="5">
  450. <table id="newOrderProductTable" class="table table-striped table-bordered table-condensed">
  451. <tr>
  452. <td rowspan="4" style="width: 295px;height: 125px">
  453. <img style="width: 100px;height: 100px" src="${newOrderProduct.image}">
  454. <font title="${newOrderProduct.name}">${fns:abbr(newOrderProduct.name,30)}</font>
  455. </td>
  456. <td style="width: 275px;">
  457. 单价:¥<fmt:formatNumber type="number" value="${newOrderProduct.price}" pattern="0.00" maxFractionDigits="2" />
  458. </td>
  459. <td >
  460. 折扣 :${newOrderProduct.discount}%
  461. </td>
  462. <td >
  463. 折后单价 :¥<span class="discountPrice"><fmt:formatNumber type="number" value="${newOrderProduct.discountPrice}" pattern="0.00" maxFractionDigits="2" /></span>
  464. </td>
  465. <td >
  466. 数量(赠品):${newOrderProduct.num}(${newOrderProduct.presentNum})
  467. </td>
  468. </tr>
  469. <tr>
  470. <td style="width: 275px;">
  471. 税率:${newOrderProduct.taxRate}%
  472. </td>
  473. <td>
  474. 税费:¥<span class="addedValueTax"><fmt:formatNumber type="number" value="${newOrderProduct.addedValueTax}" pattern="0.00" maxFractionDigits="2" /></span>
  475. </td>
  476. <td colspan="2">
  477. 总额:¥<fmt:formatNumber type="number" value="${newOrderProduct.shouldPayFee}" pattern="0.00" maxFractionDigits="2" />
  478. </td>
  479. </tr>
  480. <tr>
  481. <%--已发货=商品数量-未出库数量--%>
  482. <td><font color="red">已发货:<span id="shipped${status.index}${productStatus.index}">${newOrderProduct.num + newOrderProduct.presentNum - newOrderProduct.notOutStore}</span></font></td>
  483. <input type="hidden" id="returning${status.index}${productStatus.index}" value="${newOrderProduct.returningPurchaseProductNum}"/>
  484. <%--已退货=所有退货数量总和--%>
  485. <td><font color="red"><span>已退货:<span id="returned${status.index}${productStatus.index}">${newOrderProduct.returnedPurchaseProductNum}</span></span></font></td>
  486. <td colspan="4"><font color="red"><span>本次退货:<input ${newOrderProduct.presentNum>0?"readonly":""} presentNum="${newOrderProduct.presentNum}" id="applicationReturnedNum${status.index}${productStatus.index}" class="refundGoodsInput shopOrderInput" name="cmReturnedPurchaseProductList[${status.index}][${productStatus.index}].applicationReturnedNum" value="${newOrderProduct.num + newOrderProduct.presentNum - newOrderProduct.notOutStore -newOrderProduct.returnedPurchaseProductNum }" oninput="this.value=this.value.replace(/\D/g,'').replace(/^0+(?=\d)/,1)" class="input tuihuo" type="text" onchange="setApplicationReturnedNum(${status.index},${productStatus.index})"></span></font></td>
  487. </tr>
  488. <tr>
  489. <%--待发货=未出库数量-取消数量--%>
  490. <td><font color="red">待发货:<span id="toBeShipped${status.index}${productStatus.index}">${newOrderProduct.notOutStore - newOrderProduct.cancelProductNum}</span></font></td>
  491. <%--已取消数量=所有已取消数量总和--%>
  492. <td><font color="red">已取消:<span id="toBeShipped${status.index}${productStatus.index}">${newOrderProduct.cancelProductNum}</span></font></td>
  493. <td colspan="4"><font color="red"><span>本次取消:<input ${newOrderProduct.presentNum>0?"readonly":""} id="applicationCancelNum${status.index}${productStatus.index}" class="cancelGoodsInput shopOrderInput" name="cmReturnedPurchaseProductList[${status.index}][${productStatus.index}].applicationCancelNum" value="${newOrderProduct.notOutStore - newOrderProduct.cancelProductNum}" oninput="this.value=this.value.replace(/\D/g,'').replace(/^0+(?=\d)/,1)" class="input cancel" type="text" onchange="setApplicationCancelNum(${status.index},${productStatus.index})"></span></font></td>
  494. <form:hidden path="cmReturnedPurchaseProductList[${status.index}][${productStatus.index}].returnedReceiver"/>
  495. <form:hidden path="cmReturnedPurchaseProductList[${status.index}][${productStatus.index}].shopOrderID" value="${newOrderProduct.shopOrderID}"/>
  496. <form:hidden path="cmReturnedPurchaseProductList[${status.index}][${productStatus.index}].productID" value="${newOrderProduct.productID}"/>
  497. <form:hidden path="cmReturnedPurchaseProductList[${status.index}][${productStatus.index}].orderProductID" value="${newOrderProduct.orderProductID}"/>
  498. <form:hidden path="cmReturnedPurchaseProductList[${status.index}][${productStatus.index}].shopID" value="${newOrderProduct.shopID}"/>
  499. </tr>
  500. </table>
  501. </td>
  502. </tr>
  503. </c:forEach>
  504. </table>
  505. </c:if>
  506. <%--默认状态代码--%>
  507. <c:if test="${shopOrder.defaultStatus}">
  508. <table id="shopOrderTable${status.index}" class="table shopOrderTable table-striped table-bordered table-condensed">
  509. <thead></thead>
  510. <tr>
  511. <td style="width: 300px;">
  512. 子订单号(ID):${shopOrder.shopOrderNo}(${shopOrder.shopOrderID})
  513. </td>
  514. <td style="width: 275px;">
  515. 子订单金额:¥<fmt:formatNumber type="number" value="${shopOrder.totalAmount}" pattern="0.00" maxFractionDigits="2" />
  516. </td>
  517. <td>
  518. 发货状态:${fns:getDictLabel(shopOrder.sendOutStatus,'sendOutStatus' ,'' )}
  519. </td>
  520. <td>
  521. 付款状态:${fns:getDictLabel(shopOrder.payStatus,'payStatus' ,'' )}
  522. </td>
  523. <td>
  524. 供应商:${shopOrder.shopName}
  525. </td>
  526. </tr>
  527. <c:forEach items="${shopOrder.newOrderProducts}" var="newOrderProduct" varStatus="productStatus">
  528. <tr>
  529. <td colspan="5">
  530. <table id="newOrderProductTable" class="table table-striped table-bordered table-condensed">
  531. <tr>
  532. <td rowspan="4" style="width: 295px;height: 125px">
  533. <img style="width: 100px;height: 100px" src="${newOrderProduct.image}">
  534. <font title="${newOrderProduct.name}">${fns:abbr(newOrderProduct.name,30)}</font>
  535. </td>
  536. <td style="width: 275px;">
  537. 单价:¥<fmt:formatNumber type="number" value="${newOrderProduct.price}" pattern="0.00" maxFractionDigits="2" />
  538. </td>
  539. <td>
  540. 折扣 :${newOrderProduct.discount}%
  541. </td>
  542. <td>
  543. 折后单价 :¥<span class="discountPrice"><fmt:formatNumber type="number" value="${newOrderProduct.discountPrice}" pattern="0.00" maxFractionDigits="2" /></span>
  544. </td>
  545. <td>
  546. 数量(赠品):${newOrderProduct.num}(${newOrderProduct.presentNum})
  547. </td>
  548. </tr>
  549. <tr>
  550. <td style="width: 275px;">
  551. 税率:${newOrderProduct.taxRate}%
  552. </td>
  553. <td>
  554. 税费:¥<span class="addedValueTax"><fmt:formatNumber type="number" value="${newOrderProduct.addedValueTax}" pattern="0.00" maxFractionDigits="2" /></span>
  555. </td>
  556. <td colspan="2">
  557. 总额:¥<fmt:formatNumber type="number" value="${newOrderProduct.shouldPayFee}" pattern="0.00" maxFractionDigits="2" />
  558. </td>
  559. </tr>
  560. <tr>
  561. <td><font color="red">已发货:<span id="shipped${status.index}${productStatus.index}">${newOrderProduct.num + newOrderProduct.presentNum - newOrderProduct.notOutStore}</span></font></td>
  562. <input type="hidden" id="returning${status.index}${productStatus.index}" value="${newOrderProduct.returningPurchaseProductNum}"/>
  563. <td><font color="red"><span>已退货:<span id="returned${status.index}${productStatus.index}">${newOrderProduct.returnedPurchaseProductNum}</span></span></font></td>
  564. <td colspan="4"><font color="red"><span>本次退货:<input ${newOrderProduct.presentNum>0?"readonly":""} presentNum="${newOrderProduct.presentNum}" id="applicationReturnedNum${status.index}${productStatus.index}" class="refundGoodsInput1 shopOrderInput1 refundGoodsInput shopOrderInput" name="cmReturnedPurchaseProductList[${status.index}][${productStatus.index}].applicationReturnedNum" value="${newOrderProduct.num + newOrderProduct.presentNum - newOrderProduct.notOutStore - newOrderProduct.returnedPurchaseProductNum}" oninput="this.value=this.value.replace(/\D/g,'').replace(/^0+(?=\d)/,1)" class="input tuihuo" type="text" onchange="setApplicationReturnedNum(${status.index},${productStatus.index})"></span></font></td>
  565. </tr>
  566. <tr>
  567. <td><font color="red">待发货:<span id="toBeShipped${status.index}${productStatus.index}">${newOrderProduct.notOutStore - newOrderProduct.cancelProductNum}</span></font></td>
  568. <td><font color="red">已取消:<span id="toBeShipped${status.index}${productStatus.index}">${newOrderProduct.cancelProductNum}</span></font></td>
  569. <td colspan="4"><font color="red"><span>本次取消:<input ${newOrderProduct.presentNum>0?"readonly":""} id="applicationCancelNum${status.index}${productStatus.index}" class="cancelGoodsInput shopOrderInput" name="cmReturnedPurchaseProductList[${status.index}][${productStatus.index}].applicationCancelNum" value="${newOrderProduct.notOutStore - newOrderProduct.cancelProductNum}" oninput="this.value=this.value.replace(/\D/g,'').replace(/^0+(?=\d)/,1)" class="input cancel" type="text" onchange="setApplicationCancelNum(${status.index},${productStatus.index})"></span></font></td>
  570. <form:hidden path="cmReturnedPurchaseProductList[${status.index}][${productStatus.index}].returnedReceiver"/>
  571. <form:hidden path="cmReturnedPurchaseProductList[${status.index}][${productStatus.index}].shopOrderID" value="${newOrderProduct.shopOrderID}"/>
  572. <form:hidden path="cmReturnedPurchaseProductList[${status.index}][${productStatus.index}].productID" value="${newOrderProduct.productID}"/>
  573. <form:hidden path="cmReturnedPurchaseProductList[${status.index}][${productStatus.index}].orderProductID" value="${newOrderProduct.orderProductID}"/>
  574. <form:hidden path="cmReturnedPurchaseProductList[${status.index}][${productStatus.index}].shopID" value="${newOrderProduct.shopID}"/>
  575. </tr>
  576. </table>
  577. </td>
  578. </tr>
  579. </c:forEach>
  580. </table>
  581. </c:if>
  582. </c:forEach>
  583. <table id="orderTable" class="table table-striped table-bordered table-condensed">
  584. <tr>
  585. <td>
  586. <div class="order-rows">
  587. <label>发票信息:</label>
  588. <input id="invoice1" class="invoice1" name="invoice" type="radio" ${order.orderInvoice.type == 0 ? 'checked="checked"':''} disabled="disabled">
  589. <label for="invoice1">不需要发票</label>
  590. <input id="invoice2" name="invoice" type="radio" ${order.orderInvoice.type == 1 ? 'checked="checked"':''} disabled="disabled">
  591. <label for="invoice2">普通发票</label>
  592. <input id="invoice3" name="invoice" type="radio" ${order.orderInvoice.type == 2 ? 'checked="checked"':''} disabled="disabled">
  593. <label for="invoice3">增值税发票</label>
  594. <c:if test="${order.orderInvoice.type == 1}">
  595. <br>
  596. <div>
  597. <span>
  598. <c:if test="${order.orderInvoice.invoiceTitleType eq 0}">
  599. 发票抬头:
  600. <span>${order.orderInvoice.invoiceTitle}</span>
  601. </c:if>
  602. <c:if test="${order.orderInvoice.invoiceTitleType eq 1}">
  603. 发票抬头:
  604. <span>${order.orderInvoice.invoiceTitle}</span>
  605. &nbsp;&nbsp;&nbsp;&nbsp;
  606. 纳税人识别号:
  607. <span>${order.orderInvoice.corporationTaxNum}</span>
  608. </c:if>
  609. </span>
  610. </div>
  611. </c:if>
  612. <c:if test="${order.orderInvoice.type == 2}">
  613. <table>
  614. <tr>
  615. <td><span>单位名称:${order.orderInvoice.invoiceTitle}</span></td>
  616. <td><span>纳税人识别号:${order.orderInvoice.corporationTaxNum}</span></td>
  617. <td><span>注册地址:${order.orderInvoice.registeredAddress}</span></td>
  618. </tr>
  619. <tr>
  620. <td><span>注册电话:${order.orderInvoice.registeredPhone}</span></td>
  621. <td><span>开户银行:${order.orderInvoice.openBank}</span></td>
  622. <td><span>银行账号:${order.orderInvoice.bankAccountNo}</span></td>
  623. </tr>
  624. </table>
  625. </c:if>
  626. </div>
  627. </td>
  628. </tr>
  629. <tr>
  630. <td>
  631. <div class="order-rows">
  632. <label>售后条款:</label>
  633. <c:forEach items="${bpClauses}" var="items" varStatus="index">
  634. <c:if test="${items.clauseType ne 0 }">
  635. <span>
  636. <input id="clauseId${index.index+1}" class="clauseId" name="clauseID" type="radio"
  637. value="${items.id}"${(order.clauseID)==(items.id)?'checked="checked"':''}
  638. class="required" class="clauseId" disabled="disabled">
  639. <input type="hidden" class="clauseContent" id="clauseContent${index.index+1}"
  640. value="${fns:escapeHtml(order.clauseContent)}">
  641. <input type="hidden" class="clauseName" id="clauseName${index.index+1}" value="${order.clauseName}">
  642. <a href="javascript:void(0);"
  643. onclick="openClauseInfo(${index.index+1});"><label>${order.clauseName}</label></a>
  644. </span>
  645. </c:if>
  646. </c:forEach>
  647. </div>
  648. </td>
  649. </tr>
  650. </table>
  651. <div class="form-actions">
  652. <input id="btnSubmit" class="btn btn-primary" type="submit" value="申 请"/>&nbsp;
  653. <input id="btnCancel" class="btn" type="button" value="返 回" onclick="history.go(-1)"/>
  654. </div>
  655. </form:form>
  656. <script type="text/javascript" src="${ctxStatic}/modules/bulkpurchase/loadAddress.js"></script>
  657. <script type="text/javascript" src="${ctxStatic}/modules/bulkpurchase/orderForm.js"></script>
  658. <script type="text/javascript" src="${ctxStatic}/modules/bulkpurchase/stages.js"></script>
  659. <script>
  660. $(function () {
  661. var orderStatus = $("#orderStatus").val();
  662. var isBuFenFaHuo = $("#isBuFenFaHuo").val();
  663. if(isBuFenFaHuo == "true"){
  664. $(".shopOrderInput").attr("readonly",true);
  665. /*$(".shopOrderInput1").attr("readonly",false);*///设置邮费的可修改
  666. };
  667. //有促销商品订单不可修改
  668. if (${isPromotions}){
  669. $(".shopOrderInput").attr("readonly",true);
  670. }
  671. //线上全部付款订单不可修改
  672. if (${order.receiptStatus == 3 && cmDiscernReceipt.payWay eq 1}){
  673. $(".shopOrderInput").attr("readonly",true);
  674. }
  675. if(orderStatus == "true"){
  676. $("#returnWayDiv").html("");
  677. $("#returnWayDiv").html("未支付无退款");
  678. };
  679. //充值订单不可修改
  680. if (${order.rechargeGoods != null && (order.rechargeGoods eq 1 || order.rechargeGoods eq 2)}){
  681. $(".shopOrderInput").attr("readonly",true);
  682. }
  683. if (${order.rechargeGoods != null && order.rechargeGoods eq 1 && ableUserMoney eq 0}){
  684. alertx("本订单为缴纳订金订单,机构的余额为¥0.00,不能进行退款", function(){
  685. window.location.href = "${ctx}/order/orderList";
  686. })
  687. }
  688. if (${order.rechargeGoods != null && order.rechargeGoods eq 2 && ableUserMoney eq 0}){
  689. alertx("本订单为充值余额订单,机构的余额为¥0.00,不能进行退款", function(){
  690. window.location.href = "${ctx}/order/orderList";
  691. })
  692. }
  693. $('.upload-content .conList .btn:nth-of-type(1)').html('<div><span>+</span><h5>选择图片</h5></div>');
  694. $('.upload-content .conList .btn:nth-of-type(2)').after('<img class="cancel-upload" src="/static/images/close-btn1.png">').remove();
  695. $('.upload-content .conList').find('.cancel-upload').hide();
  696. var observeEle = document.getElementsByClassName('upload-content')[0];
  697. var MutationObserver = window.MutationObserver || window.WebKitMutationObserver;
  698. var MutationObserverConfig={
  699. childList: true,
  700. subtree: true,
  701. characterData: true
  702. };
  703. var observer = new MutationObserver(function(mutations){
  704. $.each(mutations, function(index,item) {
  705. if (item.type === 'childList') {
  706. // 在创建新的 element 时调用
  707. var target = $(item.target),
  708. thisWrapper = target.closest('.conList'),
  709. nextEle = thisWrapper.next();
  710. thisWrapper.find('li').css('z-index',99);
  711. thisWrapper.find('.cancel-upload').show();
  712. if(nextEle.hasClass('hide-pic')) {
  713. nextEle.removeClass('hide-pic');
  714. }
  715. }
  716. })
  717. });
  718. observer.observe(observeEle,MutationObserverConfig);
  719. $('body').on('click','.upload-content li',function() {
  720. var index = $(this).closest('.conList').index() + 1,
  721. str = 'image'+index+'FinderOpen';
  722. eval(str+'()');
  723. });
  724. $('body').on('click', '.cancel-upload',function() {
  725. var wrapper = $(this).closest('.conList');
  726. wrapper.find('li').css('z-index','-1');
  727. wrapper.find('input').val('');
  728. $(this).hide();
  729. if ($('.cancel-upload:visible').length < 9) {
  730. wrapper.addClass("hide-pic");
  731. }else{
  732. wrapper.removeClass("hide-pic");
  733. }
  734. wrapper.parent().append(wrapper.clone());
  735. wrapper.remove();
  736. $(".conList").each(function(i,ele){
  737. if($(ele).find("input.input-xlarge").val()){
  738. $(ele).next().removeClass("hide-pic")
  739. }
  740. })
  741. });
  742. $(window).on("load", function(){
  743. setTimeout(function(){
  744. $("#remarkImageBox").find("input.input-xlarge").each(function(i,ele){
  745. if($(ele).val()){
  746. $(ele).next().find("li").css("z-index","99");
  747. $(ele).parents(".conList").find(".cancel-upload").show();
  748. $(ele).parents(".conList").next().removeClass("hide-pic")
  749. }
  750. })
  751. },500);
  752. });
  753. //初始化支付方式选中
  754. blockEle = $('.refund-details-block');
  755. blockEle.hide();//默认不显示
  756. var str = "${cmReturnedPurchase.returnedWay}";
  757. if(str.indexOf("1") != -1){
  758. $('.refundBalanceFee').prop('checked',true);
  759. }
  760. if(str.indexOf("2") != -1){
  761. $('.refundOnlineFee').prop('checked',true);
  762. }
  763. if(str.indexOf("3") != -1){
  764. //选中了线下则默认开启银行信息
  765. $('.refundOfflineFee').prop('checked',true);
  766. blockEle.show();
  767. }
  768. //错误提示
  769. var errorMsg = "${errorMsg}";
  770. if(errorMsg){
  771. alertx(errorMsg);
  772. }
  773. //本次退货和本次取消
  774. $('body').on('input','.refundGoodsInput, .cancelGoodsInput,.refundGoodsInput1',function() {
  775. var receiptStatus = $('#receiptStatus').val(),
  776. refundFee = 0,
  777. originalAmount = getTotalAmount(); // 所有商品原始总金额
  778. if(receiptStatus == 1) {
  779. //如果为订单状态收款状态为1待收款,退款金额refundFee为0
  780. refundFee = 0;
  781. } else if(receiptStatus == 2) {
  782. var paidAmount = Number($('#paidAmount').val()); // 已支付金额
  783. // 如果商品原始总金额 > 已支付金额,
  784. // 退款金额为refundFee就为已支付金额(列:商品20,运费10,用户付15,退款15)
  785. /** 此处考虑邮费可不退,获取邮费退货数量*/
  786. var num = $(".refundGoodsInput1").val();
  787. var freight = ${null != order.freight ? order.freight : 0 };//默认不退
  788. if(num > 0){//退邮费
  789. freight = 0;
  790. }
  791. if(originalAmount > paidAmount) {
  792. refundFee = paidAmount - freight;
  793. } else {
  794. refundFee = originalAmount - freight;
  795. }
  796. } else if(receiptStatus == 3) {
  797. var managerDiscount = Number($('#discountFee').val()),
  798. totalDiscount = Number($('#totalDiscount').val());
  799. // 如果经理折扣 > 订单之前已退款的金额
  800. if(managerDiscount > totalDiscount) {
  801. // 如果商品总和 > (剩余可抵扣经理折扣)
  802. if(originalAmount > (managerDiscount - totalDiscount)) {
  803. refundFee = originalAmount - (managerDiscount - totalDiscount);
  804. } else {
  805. refundFee = 0;
  806. }
  807. }else {
  808. refundFee = originalAmount;
  809. }
  810. }
  811. $('.refundFee').text(refundFee.toFixed(2));
  812. if (${cmDiscernReceipt.payWay eq 3 && order.receiptStatus == 3}) {
  813. $('#balanceOfAccount').val(refundFee.toFixed(2));
  814. }
  815. })
  816. function getTotalAmount() {
  817. var originalAmount = 0; // 所有商品原始总金额
  818. $('.shopOrderTable').each(function() {
  819. var innerTable = $(this).find('.table');
  820. innerTable.each(function() {
  821. // 某个商品原始金额 = 单个折后单价 * (单个退货数量+单个取消数量)
  822. var refundVal = Number($(this).find('.refundGoodsInput').val()),
  823. cancelVal = Number($(this).find('.cancelGoodsInput').val()),
  824. discountPrice = Number($(this).find('.discountPrice').text()),
  825. addedValueTax = Number($(this).find('.addedValueTax').text());
  826. var presentNum = Number($(this).find('.refundGoodsInput').attr('presentNum'));
  827. if((refundVal != 0 || cancelVal != 0)){
  828. originalAmount += (discountPrice * (refundVal + cancelVal - presentNum)+(refundVal + cancelVal - presentNum)*addedValueTax);
  829. }
  830. })
  831. })
  832. return originalAmount;
  833. }
  834. });
  835. (function(){
  836. $('body').click(function(e) {
  837. var target = $(e.target),
  838. $block = $('.operation-block');
  839. if(target.is('.operation-btn')) {
  840. if($block.css('display') === 'none') {
  841. $block.show();
  842. } else {
  843. $block.hide();
  844. }
  845. }
  846. if(!target.is('.operation-block') && !target.is('.operation-btn')) {
  847. $block.hide();
  848. }
  849. });
  850. $('.clauseId').each(function() {
  851. var self = $(this);
  852. if (!self.prop("checked")) {
  853. self.parent().hide();
  854. } else {
  855. self.hide();
  856. }
  857. });
  858. $('#invoice1, #invoice2, #invoice3').each(function () {
  859. var self = $(this);
  860. if (!self.prop("checked")) {
  861. self.next().remove();
  862. self.remove();
  863. } else {
  864. self.remove();
  865. }
  866. })
  867. })();
  868. function openClauseInfo(index) {
  869. var content=$("#clauseContent"+index).val();
  870. if (content == '') {
  871. return false;
  872. }
  873. $.jBox(content, {
  874. title: $("#clauseName"+index).val(),
  875. width: $(top.document).width() - 440,
  876. height: $(top.document).height()-240,
  877. buttons: { '关闭': true }
  878. });
  879. }
  880. function setReturnReceiver(index) {
  881. var status = $("#productReturnedReceiver").val();
  882. if(status != undefined && status != 0 ){
  883. $('#shopOrderTable'+index).find("[name*='returnedReceiver']").val(status);
  884. }
  885. }
  886. function setApplicationReturnedNum(a,b){
  887. var num = $("#applicationReturnedNum"+a+b).val();
  888. var max = Number($("#shipped"+a+b).html() - $("#returning"+a+b).html() - $("#returned"+a+b).html());
  889. if(num > max){
  890. alertx("退货数量不能大于已发货数量(之前已退不算)!");
  891. $("#applicationReturnedNum"+a+b).val(0)
  892. }
  893. };
  894. function setApplicationCancelNum(a,b){
  895. var num = $("#applicationCancelNum"+a+b).val();
  896. var max = Number($("#toBeShipped"+a+b).html());
  897. if(num > max){
  898. alertx("取消数量不能大于待发数量,请重新填写!");
  899. $("#applicationCancelNum"+a+b).val(0)
  900. }
  901. };
  902. </script>
  903. </body>
  904. </html>