MicroCommunityWeb/public/components/fee/payFeeMonthOrderResult/payFeeMonthOrderResult.js
2023-09-04 00:50:33 +08:00

177 lines
7.0 KiB
JavaScript

(function (vc) {
var DEFAULT_PAGE = 1;
var DEFAULT_ROWS = 10;
vc.extends({
data: {
payFeeMonthOrderResultInfo: {
printUrl: '/print.html#/pages/property/printPayFee',
remark: '',
primeRate: '',
payType:'common',
authCode:'',
primeRates: [],
selectMonthIds:[],
totalAmount:0.0,
remark:''
}
},
_initMethod: function () {
//与字典表支付方式关联
vc.getDict('pay_fee_detail', "prime_rate", function(_data) {
$that.payFeeMonthOrderResultInfo.primeRates = _data;
});
},
_initEvent: function () {
vc.on('payFeeMonthOrderResult','openResultModal',function(_data){
vc.copyObject(_data,$that.payFeeMonthOrderResultInfo);
$("#doPayFeeMonthOrderResultModal").modal('show');
})
},
methods: {
_doPayFee: function() {
if ($that.payFeeMonthOrderResultInfo.primeRate == '') {
vc.toast('请选择支付方式');
return;
}
let _selectMonthIds = $that.payFeeMonthOrderResultInfo.selectMonthIds;;
if (_selectMonthIds.length < 1) {
vc.toast('未选中要缴费的项目');
return;
}
let _data = {
communityId: vc.getCurrentCommunity().communityId,
primeRate:$that.payFeeMonthOrderResultInfo.primeRate,
selectMonthIds: _selectMonthIds,
remark:$that.payFeeMonthOrderResultInfo.remark
}
vc.http.apiPost(
'/fee.payMonthFee',
JSON.stringify(_data), {
emulateJSON: true
},
function(json, res) {
//vm.menus = vm.refreshMenuActive(JSON.parse(json),0);
let _json = JSON.parse(json);
if (_json.code == 0) {
$that._doDealPayResult(_json);
return;
}
vc.toast(_json.msg);
},
function(errInfo, error) {
console.log('请求失败处理');
$that._closeDoBatchPayFeeModal();
vc.toast(errInfo);
});
},
_qrCodePayFee: function() {
if ($that.payFeeMonthOrderResultInfo.primeRate == '') {
vc.toast('请选择支付方式');
return;
}
let _fees = $that._getPayFees();
if (_fees.length < 1) {
vc.toast('未选中要缴费的项目');
return;
}
let _payerObjName = $that.payFeeMonthOrderResultInfo.payerObjNames.join(',')
let _data = {
communityId: vc.getCurrentCommunity().communityId,
fees: _fees,
authCode: $that.payFeeMonthOrderResultInfo.authCode,
receivedAmount: $that.payFeeMonthOrderResultInfo.feePrices,
payerObjName: _payerObjName,
subServiceCode: 'fee.payBatchFee'
}
vc.http.apiPost(
'/payment.qrCodePayment',
JSON.stringify(_data), {
emulateJSON: true
},
function(json, res) {
let _data = JSON.parse(json);
if (_data.code == 404) {
vc.toast(_data.msg);
if (_data.data && _data.data.orderId) {
$that.payFeeMonthOrderResultInfo.orderId = _data.data.orderId;
setTimeout('$that._qrCodeCheckPayFinish()', 5000);
}
return;
} else if (_data.code == 0) {
$that._doDealPayResult(_data);
} else {
vc.toast(_data.msg);
}
},
function(errInfo, error) {
console.log('请求失败处理');
vc.toast(errInfo);
}
);
},
_qrCodeCheckPayFinish: function() {
let _fees = $that._getPayFees();
if (_fees.length < 1) {
vc.toast('未选中要缴费的项目');
return;
}
let _data = {
communityId: vc.getCurrentCommunity().communityId,
fees: _fees,
authCode: $that.payFeeMonthOrderResultInfo.authCode,
receivedAmount: $that.payFeeMonthOrderResultInfo.feePrices,
subServiceCode: 'fee.payBatchFee',
orderId: $that.payFeeMonthOrderResultInfo.orderId
}
vc.http.apiPost(
'/payment.checkPayFinish',
JSON.stringify(_data), {
emulateJSON: true
},
function(json, res) {
let _data = JSON.parse(json);
if (_data.code == 404) {
vc.toast(_data.msg);
return;
} else if (_data.code == 41) {
setTimeout('$that._qrCodeCheckPayFinish()', 5000);
return;
}
$that._doDealPayResult(_data);
},
function(errInfo, error) {
console.log('请求失败处理');
vc.toast(errInfo);
}
);
},
_doDealPayResult: function(_json) {
$that._closeDoBatchPayFeeModal();
let _data = _json.data;
let detailIds = '';
_data.details.forEach(item => {
detailIds += (item + ',');
})
$that.payFeeMonthOrderResultInfo.detailIds = detailIds;
//vc.saveData('_feeInfo', _feeInfo);
//关闭model
$("#payFeeResult").modal({
backdrop: "static", //点击空白处不关闭对话框
show: true
});
vc.emit('payFeeMonthOrder','load',{})
},
_closeDoBatchPayFeeModal:function(){
$("#doPayFeeMonthOrderResultModal").modal('hide');
}
}
});
})(window.vc);