123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289 |
- (function ($ang) {
- 'use strict';
- var app = $ang.module('devself.common');
- app.controller("payAsideCtrl", ['$scope', '$rootScope', '$window', '$http', '$modal', '$alert', function ($scope, $rootScope, $window, $http, $modal, $alert) {
- $scope.data = {
- amt: 0,
- selectedPayType: '1',
- changePayType: true,
- hasInit: false,
- msg: '生成支持订号中……',
- pageData: {pageindex: 1, pagesize: 5, ptotal: 0},
- item: {},
- extData: {},
- activeTab: 'pay',
- pageList: [],
- paydefer$: $rootScope.paydefer$
- };
- $scope.wxNativeData = {};
- $scope.$watch("data.activeTab", function (newVal) {
- if (newVal == 'history') {
- $scope.loadHistoryList();
- }
- });
- $scope.loadHistoryList = function () {
- if (!$scope.data.item.payRelID) {
- return;
- }
- $scope.data.pageData.payRelID = $scope.data.item.payRelID;
- $http.get("../../wxapi/pay/getPayHistoryList", {params: $scope.data.pageData}).then(function (req) {
- if (req.data.success) {
- $scope.data.pageList = req.data.item.list;
- $scope.data.pageData.ptotal = req.data.item.size;
- }
- });
- };
- $scope.$watch("data.pageData.pageindex", function (newVal) {
- $scope.loadHistoryList();
- });
- $scope.selectPay = function (it) {
- $scope.data.item = it;
- $scope.data.activeTab = 'pay';
- $scope.data.extData.payType = it.payType;
- $scope.checkPayType();
- }
- $scope.initPay = function () {
- $http.post("../../wxapi/pay/initPay", $rootScope.payModel).then(function (res) {
- if (res.data.success) {
- $scope.data.item = res.data.item;
- $scope.data.extData = res.data.extdata;
- $scope.data.hasInit = true;
- $scope.checkPayType();
- $scope.data.msg = '订单已创建!'
- } else {
- $scope.data.hasInit = false;
- $scope.data.msg = '订单通信失败!';
- }
- }, function (err) {
- $scope.data.hasInit = false;
- $scope.data.msg = '订单通信失败!';
- })
- };
- $scope.checkPayType = function () {
- $scope.data.changePayType = $scope.data.item.payState == 0;
- if ($scope.data.item.payState == 1) {
- $scope.data.selectedPayType = $scope.data.extData.payType.toString();
- }
- };
- $scope.startPay = function () {
- if ($scope.data.selectedPayType == 1) {
- //微信接口
- $scope.paybyWXPay();
- } else {
- $scope.paybyUnionPay();
- }
- setTimeout($scope.MonitorPayState, 5 * 1000);
- };
- $scope.resetPay = function () {
- $http.post("../../wxapi/pay/resetPay", $scope.data.item).then(function (req) {
- if (req.data.success) {
- $scope.data.item = req.data.item;
- $scope.data.hasInit = true;
- $scope.data.extData = {};
- $scope.checkPayType();
- }
- });
- }
- var nativeModal = $modal({
- scope: $scope,
- templateUrl: '../js/setting/payment/wx-modal.html',
- controller: 'wxNativeCtrl',
- show: false,
- animation: 'am-fade-and-slide-top'
- });
- $scope.paybyUnionPay = function () {
- $scope.data.item.payState = 1;
- $scope.data.extData.payType = 2;
- $scope.checkPayType();
- $window.open("../../wxapi/pay/frontconsume?id=" + $scope.data.item.payOrderID);
- }
- $scope.paybyWXPay = function () {
- /*
- $scope.wxNativeData.imgsrc='../js/setting/payment/wx.png';
- nativeModal.$promise.then(nativeModal.show);
- return;*/
- $http.get('../../wxapi/pay/startWebWxPay', {params: {id: $scope.data.item.payOrderID}}).then(function (req) {
- if (req.data.success) {
- if (req.data.item.state) {
- $scope.wxNativeData.imgdata = req.data.item.orderReq.codeUrl;
- $scope.wxNativeData.payOrderID = $scope.data.item.payOrderID;
- $scope.data.item.payState = 1;
- $scope.data.extData.payType = 1;
- $scope.checkPayType();
- nativeModal.$promise.then(nativeModal.show);
- $scope.data.hasInit = true;
- $scope.data.msg = '';
- } else {
- $scope.data.hasInit = false;
- $scope.data.msg = req.data.item.msg;
- }
- }
- });
- }
- $scope.MonitorPayState = function () {
- $http.get('../../wxapi/pay/checkpayorderstatus', {params: {payOrderID: $scope.data.item.payOrderID}}).then(function (req) {
- if (req.data.success) {
- if (req.data.item == 3) {
- $alert({
- title: '提示:',
- content: '支付成功',
- placement: 'top',
- type: 'info',
- show: true,
- duration: 3
- });
- if ($scope.data.extData.payType == 1) {
- nativeModal.hide();
- }
- $scope.$hide();
- $scope.data.paydefer$.resolve(true);
- //$scope.$hide();
- } else if (req.data.item == 4) {
- $alert({
- title: '提示:',
- content: '支付失败',
- placement: 'top',
- type: 'info',
- show: true,
- duration: 3
- });
- nativeModal.hide();
- $scope.data.paydefer$.resolve(false);
- if ($scope.data.extData.payType == 1) {
- nativeModal.hide();
- }
- $scope.$hide();
- } else {
- $scope.data.paydefer$.notify("继续处理中!");
- setTimeout($scope.MonitorPayState, 5 * 1000);
- //$alert({ title: '提示:',content:'未知状态', placement: 'top', type: 'info', show: true, duration: 3 });
- }
- }
- }, function (err) {
- });
- };
- if ($rootScope.payModel) {
- $scope.data.amt = $rootScope.payModel.amt | 0;
- $scope.initPay();
- }
- }]).controller('wxNativeCtrl', ['$scope', '$timeout', '$http', '$alert', function ($scope, $timeout, $http, $alert) {
- $scope.wxNativeData = $scope.$parent.$parent.wxNativeData;
- //$timeout($scope.checkPayResult,60*1000);
- }]).controller('backAsideCtrl', ['$scope', '$http', '$rootScope', '$alert', function ($scope, $http, $rootScope, $alert) {
- $scope.data = {
- $defer: $rootScope.backpaydefer$,
- pageData: {
- payRelID: $rootScope.payModel.payRelID,
- pageindex: 1,
- pagesize: 5,
- ptotal: 0
- },
- pageList: [],
- activeTab: 'back',
- logData: {
- payRelID: $rootScope.payModel.payRelID,
- pageindex: 1,
- pagesize: 5,
- ptotal: 0
- },
- logList: []
- };
- $scope.loadItems = function () {
- $http.get("../../wxapi/pay/getPayHistoryList", {params: $scope.data.pageData}).then(function (req) {
- if (req.data.success) {
- $scope.data.pageList = req.data.item.list;
- $scope.data.pageData.ptotal = req.data.item.size;
- }
- });
- };
- $scope.loadLog = function () {
- $http.get("../../wxapi/pay/refundloglist", {params: $scope.data.logData}).then(function (req) {
- if (req.data.success) {
- $scope.data.logList = req.data.item.list;
- $scope.data.logData.ptotal = req.data.item.size;
- }
- });
- };
- $scope.$watch("data.pageData.pageindex", function (newVal) {
- $scope.loadItems();
- });
- $scope.$watch("data.logData.pageindex", function (newVal) {
- $scope.loadLog();
- });
- $scope.$watch("data.activeTab", function (newVal) {
- if (newVal == 'log') {
- $scope.loadLog();
- }
- });
- $scope.backPay = function (it) {
- if (confirm('是否确定退款?')) {
- $http.get('../../wxapi/pay/backpay', {params: {payOrderID: it.payOrderID}}).then(function (req) {
- if (req.data.success) {
- $scope.data.$defer.resolve(true);
- $scope.$hide();
- $alert({
- title: '提示:',
- content: '退款成功!',
- placement: 'top',
- type: 'info',
- show: true,
- duration: 3
- });
- } else {
- $scope.data.$defer.notify('退款错误!');
- $alert({
- title: '提示:',
- content: req.data.msg,
- placement: 'top',
- type: 'info',
- show: true,
- duration: 3
- });
- }
- }, function (err) {
- $scope.data.$defer.notify('退款错误!');
- });
- }
- }
- $scope.loadItems();
- }]);
- })(angular);
|