前端之家收集整理的这篇文章主要介绍了
angular--$q.all(),
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
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,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,"¥");
});
})