angular--$q.all()

来源:互联网 发布:godaddy 域名赎回期 编辑:程序博客网 时间:2024/05/21 08:57
angular.module('design', [])//服务引擎管理服务.factory("designService", function ($http, $q,$log) {    function post(uri, params) {        return $http.post(uri, params)        .error(function (error, status){        $log.log("status:"+status);        $log.log("error:"+error);//内部服务器错误        })        .then(function (resp) {            if (resp.data && resp.data.success){                return resp.data            }else if (resp.data && resp.data.message) {            if(resp.data.message=="No login."){            window.location.href = "login.html";            }else{            return $q.reject(resp.data.message)            }            }else {                return $q.reject("操作失败")            }        },function (msg) {return $q.reject("网络超时,请检查网络!")     })    }    var api = {//查询结算单明细-收入        getBusinessClearingIncomeDtail: function (obj) {            return post("/query/clearing.queryClearing17",obj)        },        //查询结算单明细-支出        getBusinessClearingExpendDetail: function (obj) {            return post("/query/clearing.queryClearing18",obj)        }}    return api;}angular.module('businessClearing.detail', ['design'])//模块管理控制器.controller('businessClearing.detail.Controller', function($scope,$filter, $rootScope,designService,$q) {$scope.formObj = {incomeMoneyTotle:0,expenditureMoneyTotle:0,accountsMoneyTotle:0,};function loadIncomeData(){/*** * 赋值企业基本信息 * *///查询结算单明细-收入return designService.getBusinessClearingIncomeDtail({settlementId:$scope.entity._id}).then(function(data) {$scope.gridOptions1.data = data.data;angular.forEach(data.data,function(node,index,arr){$scope.formObj.incomeMoneyTotle += parseInt(node.incomeMoney);})},function (msg) {alert(msg);         }) .then(function() {return $scope.formObj.incomeMoneyTotle;    });}function loadExpendData(){//查询结算单明细-支出return designService.getBusinessClearingExpendDetail({settlementId:$scope.entity._id}).then(function(data) {$scope.gridOptions2.data = data.data;angular.forEach(data.data,function(node,index,arr){$scope.formObj.expenditureMoneyTotle += parseInt(node.expenditureMoney);})},function (msg) {alert(msg);         }) .then(function() {return $scope.formObj.expenditureMoneyTotle;    });}$q.all([loadIncomeData(),loadExpendData()]).then(function(result){    $scope.formObj.accountsMoneyTotle = $filter("currency")((result[0] + result[1])/100,"¥");    $scope.formObj.expenditureMoneyTotle = $filter("currency")(result[1]/100,"¥");    $scope.formObj.incomeMoneyTotle = $filter("currency")(result[0]/100,"¥");});})