that.onStatusEnumChange = function (toStatus) { //设计理念是当completed 和 rejected 的状态下,是无法换状态 if (toStatus == "completed" || toStatus == "rejected") { S.confirm("After status change to " + toStatus + ", it will not able to change back, are you sure ?", function () { updateStatus(); }, function () { rollbackValue(); }); } else { updateStatus(); } //恢复资料 function rollbackValue() { that.resourceClone.statusEnum = that.resource.statusEnum; } function updateStatus() { //new HttpObj 制作一个请求对象 var updateStatushttpObj = new HttpObj({ url: "//localhost:4745/api/Orders(" + that.resourceClone.id + ")/RPC.changeStatus", method: "POST", data: { toStatusEnum: that.resourceClone.statusEnum } }); //refreshAsyncHttpObj 制作一个请求对象,同时有promise(把回来的资源给覆盖回之前的资源) var refreshResourceHttpObj = that.resource.extend.refreshAsyncHttpObj(); //batchHttp 就是把所有请求对象给发出去 batchHttp([updateStatushttpObj, refreshResourceHttpObj], { ajaxCommObject: {} }).then(function () { that.resourceClone = that.resource.extend.cloneForPut(); }, function () { rollbackValue(); }); } }
时间: 2024-10-16 19:03:00