详细阐述if (obj.event == 'send'){ if (checkStatus.data.length < 1) { layer.msg("请选择要发货的记录!", {icon: 2}); return false; } layer.confirm('确定要发货?', { btn: ['确定', '取消'] //按钮 }, function () { var orderIds = []; console.log(checkStatus.data.length); for (var i = 0; i < checkStatus.data.length; i++) { orderIds.push(checkStatus.data[i].id); if (checkStatus.data[i].status==2){ alert("货单中已收货的订单,不可更改状态信息,请重新选择订单!") return false }else if (checkStatus.data[i].status==1){ alert("该订单已发货,请勿重复操作!") return false } else { orderIds.push(checkStatus.data[i].id); } } console.log(orderIds); var index = layer.load(2); $.ajax({ url: web.rootPath() + "orderinfo/send", type: "post", contentType: "application/json;charset=utf-8", data: JSON.stringify(orderIds), dataType: 'json', success: function (data) { layer.msg("操作成功", { icon: 1, success: function () { $('#SearchBtn').trigger("click"); } }); }, error: function (e) { layer.msg(e.responseJSON.message, {icon: 2}); }, complete: function () { layer.close(index); } }) }, function () { }); }
时间: 2024-04-06 18:33:38 浏览: 83
这段代码主要实现了一个发货操作的功能。当 obj.event 等于 'send' 时,会判断 checkStatus.data 是否为空,如果为空则会弹出“请选择要发货的记录”的提示框并返回 false。如果不为空,则会弹出一个确认框,询问用户是否确定要发货,如果点击确定,则会遍历 checkStatus.data 数组,将其 id 存入 orderIds 数组中,并且会判断当前订单的状态,如果状态为 2(已收货)则会弹出“货单中已收货的订单,不可更改状态信息,请重新选择订单!”的提示框并返回 false,如果状态为 1(已发货)则会弹出“该订单已发货,请勿重复操作!”的提示框并返回 false。如果订单状态不为 1 或 2,则将其 id 存入 orderIds 数组中。最后,使用 ajax 发送一个 post 请求,将 orderIds 数组作为请求体发送给后端的 /orderinfo/send 接口,并在请求成功后弹出“操作成功”的提示框,并触发一个名为 'SearchBtn' 的点击事件,以便刷新页面。如果请求失败,则会弹出请求失败的提示框。无论请求成功或失败,都会关闭加载中动画。
阅读全文