app.config([ '$stateProvider', '$urlRouterProvider', function($stateProvider, $urlRouterProvider) { $urlRouterProvider.otherwise("/enrol_main"); $stateProvider.state('enrol_main', { url : "/enrol_main", params : { enrol_id : null }, templateUrl : "enrol_main.html", controller : 'EnrolMainCtrl' }).state('enrol_guide', { url : "/enrol_guide/{category_id}", params : { category_id : null }, templateUrl : "enrol_guide.html", controller : 'EnrolGuideCtrl' }).state('enrol_info', { url : "/enrol_info", params : { enrol_id : null, bk_status : null }, templateUrl : "enrol_info.html", controller : 'EnrolInfoCtrl' }).state('std_info', { url : "/std_info", templateUrl : "std_info.html", controller : 'StdInfoCtrl' }).state('change_pwd', { url : "/change_pwd", templateUrl : "modify_password.html", controller : 'ModifyPasswordCtrl' }).state('std_bill', { url : "/std_bill", templateUrl : "std_bill.html", controller : 'StdBillCtrl' }).state('score', { url : "/score", templateUrl : "score.html", controller : 'StdScoreCtrl' }).state('notice', { url : "/notice/{category_id}", params : { category_id : null }, templateUrl : "enrol_notice.html", controller : 'EnrolNoticeCtrl' }).state('exam_card', { url : "/examCard/{enrol_id}", params : { enrol_id : null }, templateUrl : "exam_card.html", controller : 'ExamCardCtrl' }).state('reader', { url : "/reader/{category_id}/{i05}/{i04}", params : { category_id : null, i05 : null, i04 : null }, templateUrl : "reader_download.html", controller : 'ReaderDownloadCtrl' }).state('modify_tracks', { url: '/modify_tracks/{enrol_id}', params: { enrol_id: null }, templateUrl: 'modify_tracks.html', controller: 'ModifyTracksCtrl' }) } ]); app.controller('AppCtrl', [ '$rootScope', '$scope', '$http', '$timeout', '$state', function($rootScope, $scope, $http, $timeout, $state) { $.ajax({ url : '../enrol/gobal/std/init.htm', async : false, type : "POST", dataType : "json", success : function(data) { $rootScope.ArtStdReg = {}; if (data.success == false) { var d = dialog({ title : '错误提示', content : data.errorMsg, ok : function() { window.location = 'index.html'; }, okValue : '确定', width : 350 }); d.showModal(); return; } else { $rootScope.ArtStdReg = data.entity; } }, error : function() { var d = dialog({ title : '错误提示', content : '无法正常访问服务器,请稍后再试', ok : function() { }, okValue : '确定', width : 350 }); d.showModal(); } }); $rootScope.goUrl = function(url, ctrl) { $state.go(url); return false; } $scope.logout = function() { $http({ url : '../enrol/pc/reg/logout.htm' }).success(function(data) { }); window.location = 'index.html'; } $rootScope.errorMsg = function(msg) { var d = dialog({ title : '错误提示', content : msg, ok : function() { }, okValue : '确定', width : 350 }); d.showModal(); } $rootScope.dialogMsg = function(msg, fn) { var vFn = fn == undefined ? (function() { }) : fn var d = dialog({ title : '操作提示', content : msg, ok : vFn, okValue : '确定', width : 320 }); d.showModal(); } } ]).controller('EnrolMainCtrl', [ '$rootScope', '$scope', '$http', '$timeout', '$state', '$stateParams', function($rootScope, $scope, $http, $timeout, $state, $stateParams) { $scope.load = function() { $rootScope.curPage = 'enrol'; if ($stateParams != undefined && $stateParams.enrol_id != null) { $scope.goEnrolInfo($stateParams.enrol_id); return; } $scope.myPromise = $http({ url : '../enrol/gobal/conf/category.htm' }).success(function(data) { $scope.categoryArray = data.array; $http({ url : '../enrol/gobal/std/enrol/list.htm', method : 'post', data : { std_id : $rootScope.ArtStdReg.std_id } }).success(function(data) { $rootScope.EnrolArray = data.array; angular.forEach($scope.categoryArray, function(category) { angular.forEach($scope.EnrolArray, function(enrol) { if (enrol.category_id == category.category_id) { category.enrol = enrol; } }) category.enrol_closed = category.enrol_end_time < category.db_time; category.enrol_not_start = category.enrol_start_time > category.db_time; category.enrol_start_date = category.enrol_start_time.substr(0, 10); category.enrol_end_date = category.enrol_end_time.substr(0, 10); category.DB_TIME = category.db_time; category.enrol_active = category.enrol_start_time <= category.db_time && category.enrol_end_time >= category.db_time; }) }) }); $http({ url : '../enrol/gobal/std/ticket/list.htm', method : 'post', data : { std_id : $rootScope.ArtStdReg.std_id } }).success(function(data) { $scope.TicketArray = data.array; }); $scope.goDownload = function(ticket) { ticket.std_id = $rootScope.ArtStdReg.std_id; $.ajax({ url : '../enrol/gobal/std/ticket/pdf.htm', data : ticket, async : false, type : "POST", dataType : "json", success : function(data) { window.open(data.entity); } }); } } $scope.load(); $scope.goEnrolInfo = function(enrol_id) { $state.go('enrol_info', { enrol_id : enrol_id }); } $scope.goModifyTracks = function(enrol_id) { //判断曲目是否可以修改 $http({ url : '../enrol/gobal/std/modify/tracks.htm', method: 'post', data : { enrol_id: enrol_id } }).success(function(data) { $state.go('modify_tracks', { enrol_id : enrol_id }); }); } $scope.goExamCardInfo = function(enrol_id) { $state.go('exam_card', { enrol_id : enrol_id }); } $scope.goEnrolNotice = function(category_id, category_name) { //判断兼报(音乐类、舞蹈类、表导类)不能兼报 var flag = true; for(var i=0; i< $scope.categoryArray.length; i++) { if($scope.categoryArray[i].category_id !== category_id && $scope.categoryArray[i].enrol) { $rootScope.errorMsg(category_name +"和" + $scope.categoryArray[i].category_name +"不能兼报!"); flag = false; break; } } //判断是否具有大类的权限 $http({ url : '../enrol/std/reg/category.htm', method: 'post', data : { category_id: category_id, std_id: $rootScope.ArtStdReg.std_id } }).success(function(data){ if(!data.entity) { $rootScope.errorMsg("考生统考未报考【" + category_name +"】,请确认自己的报考类别!"); return; } else { if(flag) { $state.go('notice', { category_id : category_id }); } } }); } $scope.goReaderDownLoad = function(category_id,item) { $state.go('reader', { category_id : category_id, i01 : item.i01 , i02 : item.i02 , i03 : item.i03 , i04 : item.i04 , i05 : item.i05 , s01 : item.s01 , s02 : item.s02 , s03 : item.s03 , s04 : item.s04 , s10 : item.s10 }); } $scope.testPayReply = function() { console.log('testPayReply'); $http({ url : '../enrol/gobal/std/pay/upay/reply.htm' }).success(function(data) { console.log(data); }); } } ]).controller('StdInfoCtrl', [ '$rootScope', '$scope', '$http', '$timeout', '$state', '$stateParams', 'Upload', 'toaster', function($rootScope, $scope, $http, $timeout, $state, $stateParams, Upload, toaster) { $scope.load = function() { $rootScope.curPage = 'std'; $scope.std = $rootScope.ArtStdReg; $http({ url : '../enrol/gobal/reg/init.htm' }).success(function(data) { $scope.map = data.map; angular.forEach(data.map.ProvinceArray, function(province) { if (province.province_id == $scope.std.std_province) { $scope.std.std_province_name = province.province_name; } }) }); } $scope.load(); $scope.submitStdForm = function(isValid) { $scope.submitted = true; if (isValid) { $scope.myPromise = $http({ url : '../enrol/gobal/std/update.htm', method : 'post', data : $scope.std }).success(function(data) { toaster.pop('success', '修改个人信息', '操作成功!'); }); } } } ]).controller('ModifyPasswordCtrl', [ '$rootScope', '$scope', '$http', '$timeout', '$state', '$stateParams', 'toaster', function($rootScope, $scope, $http, $timeout, $state, $stateParams, toaster) { $scope.load = function() { $scope.formData = { std_old_pass : '', std_pass : '', std_pass2 : '', std_id : $rootScope.ArtStdReg.std_id } } $scope.load(); $scope.submitPasswordForm = function(isValid) { $scope.pwdFormSubmitted = true; if (isValid) { if ($scope.formData.std_pass != $scope.formData.std_pass2) { toaster.pop('error', '新密码与确认密码不一致!'); return; } $scope.myPromise = $http({ url : '../enrol/gobal/std/modifyPassword.htm', method : 'post', data : $scope.formData }).success(function(data) { $rootScope.dialogMsg("考生密码修改成功!", function() { $state.go('enrol_main'); }); $scope.formData = { std_old_pass : '', std_pass : '', std_pass2 : '', std_id : $rootScope.ArtStdReg.std_id }; $scope.pwdFormSubmitted = false; }); } } } ]).controller('EnrolGuideCtrl', [ '$rootScope', '$scope', '$http', '$timeout', '$state', '$stateParams', function($rootScope, $scope, $http, $timeout, $state, $stateParams) { $scope.load = function() { $scope.myPromise = $http({ url : '../enrol/gobal/conf/category.htm' }).success(function(data) { $scope.AspectArray = undefined; $scope.CategoryArray = data.array; if ($stateParams.category_id) { angular.forEach($scope.CategoryArray, function(category) { if (category.category_id == $stateParams.category_id) { $scope.category = category; } }) } if ($scope.category) { $scope.goAspect(); } else { $scope.curStep = 'category'; } }); } $scope.load(); $scope.goStep = function(setp) { $scope.curStep = setp; } $scope.goAspect = function() { $scope.aspect = undefined; $scope.goSearchAspect(0) } $scope.goSearchAspect = function(index) { $http({ url : '../enrol/gobal/conf/aspect.htm', method : 'post', data : { category_id : $scope.category.category_id, start : index * 10 , limit : 10, query : $('#queryAspectText').val() } }).success(function(data) { $scope.AspectPage = data.page; if ($scope.AspectPage.total == 1) { $scope.goSubject($scope.AspectPage.records[0]); //$scope.goSubject(aspect); } else { $scope.curStep = 'aspect'; //比较是否已经报考 // angular.forEach($scope.AspectPage.records, function(aspect) { // angular.forEach($rootScope.EnrolArray, function(enrol) { // if(aspect.aspect_id == enrol.aspect_id) { // aspect.have_enrol = true; // } // }); // }) } }); } $scope.goSubject = function(aspect) { var flag = false; for(var item of $scope.AspectPage.records) { if(item.have_enrol) { flag = true; break; } } if(flag) { $rootScope.errorMsg('只能选择一个招考方向报考!如果未缴费,请及时缴费!'); return; } //没有权限 if(!aspect.have_auth) { $rootScope.errorMsg('考生报考的统考方向和该方向不一致,请选择正确的招考方向!'); return ; } $scope.aspect = aspect; $http({ url : '../enrol/gobal/conf/subject.htm', method : 'post', data : { aspect_id : aspect.aspect_id } }).success(function(data) { $scope.SubjectMap = data.map; $scope.curStep = 'subject'; }); } /*************************************************************************** * 选择科目信息 */ $scope.changeSubject = function(subject) { angular.forEach($scope.SubjectMap['SubjectGroup' + subject.subject_group], function(sb) { if (sb.subject_id == subject.subject_id) sj = sb; }); if ($scope.SubjectMap['VarietyArray' + subject.subject_id].length == 1) { sj.variety_id = $scope.SubjectMap['VarietyArray' + subject.subject_id][0].variety_id; sj.variety_name = $scope.SubjectMap['VarietyArray' + subject.subject_id][0].variety_name; } else { sj.variety_id = undefined; sj.variety_name = undefined; } for (var k = 0; k < $scope.SubjectMap['SubjectArray'].length; k++) { if ($scope.SubjectMap['SubjectArray'][k].subject_group == sj.subject_group) { $scope.SubjectMap['SubjectArray'][k] = sj; } } } $scope.changeVariety = function(subject) { angular.forEach($scope.SubjectMap['VarietyArray' + subject.subject_id], function(variety) { if (subject.variety_id == variety.variety_id) subject.variety_name = variety.variety_name; }); } $scope.goTracks = function() { $scope.TracksVarietyArray = undefined; $scope.TracksMap = undefined; $scope.AgentArray = undefined; $scope.agent = undefined; // 需要网报曲目的品种 var varietyTracksArray = [], ids = []; for (var k = 0; k < $scope.SubjectMap['SubjectArray'].length; k++) { var subject = $scope.SubjectMap['SubjectArray'][k]; // 判断是否选择了科目 if (subject.subject_id == undefined) { $rootScope.errorMsg("请选择其中一个考试科目!"); return; } // 判断是否选择了品种 if ($scope.SubjectMap['VarietyArray' + subject.subject_id] && (subject.variety_id == undefined || subject.variety_id == 0)) { $rootScope.errorMsg("请为考试科目[" + subject.subject.subject_name + "]选择一个品种"); return; } angular.forEach($scope.SubjectMap['VarietyArray' + subject.subject_id], function(variety) { if (subject.variety_id == variety.variety_id && variety.enrol_tracks_1 > 0) { varietyTracksArray.push(variety); ids.push(variety.variety_id); } }); } // 去判断是否有曲目信息 if (varietyTracksArray.length == 0) { // 不需要选择曲目 // $scope.curStep = 'agent'; $scope.goAgent(); } else { // 需要选择曲目 $http({ url : '../enrol/gobal/conf/tracks.htm', method : 'post', data : { ids : ids } }).success(function(data) { $scope.TracksVarietyArray = varietyTracksArray; $scope.TracksMap = data.map; $scope.curStep = 'tracks'; }); } } $scope.goOpenTracks = function(item, tracks) { $scope.chooseTracks = true; $scope.variety = item; $scope.goSearchTracks(0); $scope.tracks = tracks; } // 查询曲目 $scope.goSearchTracks = function(index, order, type) { console.log('goSearchTracks: ' + index); $http({ url : '../enrol/gobal/conf/tracks/query.htm', method : 'post', data : { variety_id : $scope.variety.variety_id, start : index * 10, limit : 10, order : order, type : type, query : $('#queryTracksText').val(), tracks_type : $('#queryTracksType').val() } }).success(function(data) { $scope.TracksPage = data.page; console.log($scope.TracksPage); }); } // 确认曲目信息 $scope.goConfirmTrack = function(tracks) { $scope.variety = tracks; for (var k = 0; k < $scope.TracksMap['VarietyTracks' + $scope.variety.variety_id].length; k++) { if ($scope.TracksMap['VarietyTracks' + $scope.variety.variety_id][k].tracks_id == tracks.tracks_id) { $rootScope.errorMsg('已经选择了该曲目'); return; } } for (var k = 0; k < $scope.TracksMap['VarietyTracks' + $scope.variety.variety_id].length; k++) { if ($scope.TracksMap['VarietyTracks' + $scope.variety.variety_id][k].tracks_order == $scope.tracks.tracks_order) { $scope.TracksMap['VarietyTracks' + $scope.variety.variety_id][k].tracks_name = tracks.tracks_name; $scope.TracksMap['VarietyTracks' + $scope.variety.variety_id][k].tracks_id = tracks.tracks_id; $scope.TracksMap['VarietyTracks' + $scope.variety.variety_id][k].tracks_code = tracks.tracks_code; $scope.TracksMap['VarietyTracks' + $scope.variety.variety_id][k].tracks_author = tracks.tracks_author; $scope.TracksMap['VarietyTracks' + $scope.variety.variety_id][k].tracks_source = tracks.tracks_source; $scope.TracksMap['VarietyTracks' + $scope.variety.variety_id][k].tracks_type = tracks.tracks_type; } } $scope.chooseTracks = undefined; } /*************************************************************************** * 显示可报名的考点信息 */ $scope.goAgent = function() { $scope.TracksArray = []; // 判断是否选择了曲目 if ($scope.TracksVarietyArray != undefined) { for (var k = 0; k < $scope.TracksVarietyArray.length; k++) { var variety = $scope.TracksVarietyArray[k]; for (var m = 0; m < $scope.TracksMap['VarietyTracks' + variety.variety_id].length; m++) { var tracks = $scope.TracksMap['VarietyTracks' + variety.variety_id][m]; console.log(tracks); if (tracks.tracks_enrol_type != 'Random' && (tracks.tracks_name == undefined || $.trim(tracks.tracks_name).length == 0)) { $rootScope.errorMsg('请填报品种[' + variety.variety_name + ']的第' + tracks.tracks_order + '首曲目信息'); return; } tracks.variety_id = variety.variety_id; $scope.TracksArray.push(tracks); } } //曲目重复判断(不同品种的曲目可以相同) for(var k = 0; k<$scope.TracksVarietyArray.length; k++) { var variety = $scope.TracksVarietyArray[k]; var tracksArr = []; //根据选择的品种不同,过滤曲目 if($scope.TracksArray && $scope.TracksArray.length > 0) { for(var i=0; i< $scope.TracksArray.length; i++) { if($scope.TracksArray[i].variety_id == variety.variety_id) { tracksArr.push($scope.TracksArray[i]); } } } for(var i=0; i< tracksArr.length; i++) { for(var j = i+1; j< tracksArr.length; j++) { if(tracksArr[i].tracks_name.replace(/^\s*|\s*$/g,"") == tracksArr[j].tracks_name.replace(/^\s*|\s*$/g,"")) { $rootScope.errorMsg("["+variety.variety_name + "]曲目填报的名称不能相同!"); return; } } } /*if($scope.TracksArray && $scope.TracksArray.length > 0) { for(var i=0; i< $scope.TracksArray.length; i++) { for(var j = i+1; j< $scope.TracksArray.length; j++) { if($scope.TracksArray[i].tracks_name.replace(/^\s*|\s*$/g,"") == $scope.TracksArray[j].tracks_name.replace(/^\s*|\s*$/g,"") && variety.variety_id == $scope.TracksArray[i].variety_id) { $rootScope.errorMsg("曲目填报的名称不能相同!"); return; } } } }*/ } } // 去获取可报考的考点信息 $http({ url : '../enrol/gobal/conf/agent.htm', method : 'post', data : { category_id : $scope.category.category_id, aspect_id : $scope.aspect.aspect_id } }).success(function(data) { $scope.AgentArray = data.array; if ($scope.AgentArray && $scope.AgentArray.length == 1) { $scope.goConfirm($scope.AgentArray[0]); } else { $scope.curStep = 'agent'; } }); } $scope.goConfirm = function(agent) { $scope.agent = agent; $scope.curStep = 'confirm'; $scope.processing = undefined; } $scope.goSubmit = function() { var subjects = new Array(); angular.forEach($scope.SubjectMap['SubjectArray'], function(sb) { var subject = sb; // subject.subject = undefined; subjects.push(subject); }); var entity = { std_id : $rootScope.ArtStdReg.std_id, aspect_id : $scope.aspect.aspect_id, agent_id : $scope.agent.agent_id, subject_json : JSON.stringify(subjects), tracks_json : JSON.stringify($scope.TracksArray), }; var d = dialog({ title : '操作提示', content : '请确定报考信息是否有误?', ok : function() { $scope.processing = true; $http({ url : '../enrol/std/enrol/add.htm', method : 'post', data : entity }).success(function(data) { $rootScope.dialogMsg("报考成功,请及时缴费!", function() { $state.go('enrol_info', { bk_status : 1, enrol_id : data.entity.enrol_id }); }); }).error(function() { $scope.processing = undefined; }); }, cancel : function() { }, okValue : '确定无误', cancelValue : '重新检查信息', width : 350 }); d.showModal(); } } ]).controller('EnrolInfoCtrl', [ '$rootScope', '$scope', '$http', '$timeout', '$stateParams', '$state', 'toaster', function($rootScope, $scope, $http, $timeout, $stateParams, $state, toaster) { $rootScope.curPage = 'enrol'; if ($stateParams.enrol_id == undefined) { $rootScope.goUrl("enrol_main"); return; } $scope.enrol_id = $stateParams.enrol_id; $http({ url : '../enrol/gobal/std/enrol/info.htm', method : 'post', data : { std_id : $rootScope.ArtStdReg.std_id, enrol_id : $stateParams.enrol_id } }).success(function(data) { $scope.map = data.map; $scope.enrol_active = $scope.map.serverDate <= data.map.CfAgent.enrol_end_time; }); $scope.goBank = function() { var d = dialog({ title : '操作提示', content : '缴费成功后不能再修改报考信息', ok : function() { $.ajax({ url : '../bank/gobal/list.htm', async : false,// 注意这里同步设置 dataType : 'json' }).success(function(data) { if (data.array.length == 0) { $rootScope.errorMsg("银行支付功能未启用,请联系招办!"); return; } if (data.array.length == 1) { // 直接跳转到银行页面 // $scope.goPay(data.array[0]); var bank = data.array[0]; $scope.chooseBank(bank); } else { $scope.BankArray = data.array; $('#divBankList').modal({ keyboard : false, backdrop : 'static' }) } }); }, cancel : function() { }, okValue : '确定去缴费', cancelValue : '重新检查信息', width : 350 }); d.showModal(); } // 选择银行 $scope.chooseBank = function(bank) { $scope.Bank = bank; $('#divBankList').modal('hide'); $('#divBankInfo').modal({ keyboard : false, backdrop : 'static' }) $("#imgBankPay").attr('src', bank.normal_image); if (bank.bank_code == 'WEIXIN') { $("#imgBankPay").attr('src', bank.small_image + "?enrol_id=" + $scope.enrol_id + "&std_id=" + $rootScope.ArtStdReg.std_id); } else { $scope.goPay(bank); } $scope.check = true; $timeout($scope.checkPayStatus, 1000); } $scope.closeBankModal = function() { $('#divBankList').modal('hide'); } $scope.checkPayStatus = function() { if ($scope.check == false) return; $http({ url : '../enrol/gobal/std/enrol/check.htm', method : 'post', data : { enrol_id : $stateParams.enrol_id } }).success(function(data) { if (data.entity != undefined) { // 已经缴费 $scope.goRefresh(); return; } $timeout($scope.checkPayStatus, 1000); }).error(function() { $timeout($scope.checkPayStatus, 1000); }); } $scope.goRefresh = function() { $scope.check_flag = false; $('#divBankInfo').modal('hide'); $scope.Bank = null; $timeout(function() { $state.go('enrol_info', { enrol_id : $scope.enrol_id }, { reload : true }); }, 1000) } /*$scope.goPay = function(bank) { window.open("../enrol/gobal/std/pay/jump.htm?std_id=" + $rootScope.ArtStdReg.std_id + "&enrol_id=" + $stateParams.enrol_id + "&bank_code=" + bank.bank_code + "&private_version=" + bank.private_version); }*/ //new pay $scope.goPay = function() { $http({ url : '../enrol/std/pay/channel/list.htm', method : 'post', data : { std_id :$rootScope.ArtStdReg.std_id, enrol_id : $stateParams.enrol_id } }).success(function(data) { var array = data.array; if (array == undefined || array.length == 0) { $rootScope.errorMsg('此考点未开放网络缴费,请联系考点进行缴费确认!'); return; } if (array.length > 1) { // 多个缴费渠道,显示列表供选择 return; } $scope.payChannel = array[0]; $scope.channelPay(); }).error(function() { }); } //new pay $scope.channelPay = function() { // 先判断是否已经缴费 $http({ url : '../std/stdEnrol/pay/check.htm', method : 'post', data : { std_id :$rootScope.ArtStdReg.std_id, enrol_id : $stateParams.enrol_id } }).success(function(entity) { if (entity.entity.pay_status == 'Active') { $rootScope.GobalInitMap.StdEnrol.pay_status = 'Active'; $rootScope.GobalInitMap.StdEnrol.pay_time = entity.pay_time; $rootScope.GobalInitMap.StdEnrol.bill_id = entity.bill_id; $rootScope.errorMsg('已经对该报考进行了缴费确认,无需再进行缴费操作!', '缴费提示', function() { $rootScope.goUrl('enrol_main'); }); } else { if ($scope.payChannel.channel_id == 'WeiXin' || $scope.payChannel.channel_id == 'AnxinPay') { $scope.PayChannelDialog = dialog({ title : '请用微信进行扫码支付', content : '正在生成微信扫描信息,请耐心等待!', cancelDisplay : true, width : '300px', cancelValue : '取消操作', cancel : function() { $scope.check_flag = false; }, quickClose : false }); $scope.PayChannelDialog.showModal(); } else { $scope.PayChannelDialog = dialog({ title : '请在新页面进行支付操作', content : '系统打开了新的页面导航到银行支付页面,请在新页面完成支付操作,如未能打开新页面,请检查浏览器拦截设置。
在完成支付前,请勿刷新本页面', cancelDisplay : true, width : '300px', cancelValue : '取消操作', cancel : function() { $scope.check_flag = false; }, quickClose : false }); $scope.PayChannelDialog.showModal(); window.open('../std/stdEnrol/pay/bank.htm?enrol_id=' + $stateParams.enrol_id + '&channel_id=' + $scope.payChannel.channel_id + '&std_id=' + $rootScope.ArtStdReg.std_id); } $scope.check_flag = true; $timeout($scope.checkPay(), 3000); } }).error(function() { $scope.check_flag = true; $timeout($scope.checkPay(), 3000); }); } //new pay $scope.checkPay = function() { $http({ url : '../std/stdEnrol/pay/check.htm', method : 'post', data : { std_id :$rootScope.ArtStdReg.std_id, enrol_id : $stateParams.enrol_id } }).success(function(data) { if (data.entity.pay_status == 'Active') { $scope.PayChannelDialog.close().remove(); // 已经缴费 //$scope.goRefresh(); $rootScope.goUrl('enrol_main'); return; } else { if ($scope.check_flag) $timeout($scope.checkPay, 3000); } }).error(function() { if ($scope.check_flag) $timeout($scope.checkPay, 3000); }); } $scope.goRemove = function() { var d = dialog({ title : '操作提示', content : '请确定是否取消此报考?', ok : function() { $scope.myPromise = $http({ url : '../enrol/gobal/std/enrol/remove.htm', method : 'post', data : { std_id : $rootScope.ArtStdReg.std_id, enrol_id : $stateParams.enrol_id } }).success(function(data) { if (data.success) { $state.go('enrol_main'); toaster.pop('success', '取消报考', '操作成功!'); } }).error(function() { console.log("error"); }); }, cancel : function() { }, okValue : '确定', cancelValue : '重新检查信息', width : 350 }); d.showModal(); } // if ($stateParams.bk_status) { // $stateParams.bk_status = undefined; // $scope.goBank(); // } } ]).controller('StdBillCtrl', [ '$rootScope', '$scope', '$http', '$timeout', '$state', '$stateParams', function($rootScope, $scope, $http, $timeout, $state, $stateParams) { $scope.load = function() { $rootScope.curPage = 'bill'; $scope.std = $rootScope.ArtStdReg; $http({ url : '../enrol/gobal/std/bill/list.htm', method : 'post', data : { std_id : $scope.std.std_id } }).success(function(data) { if (data.success) { $scope.array = data.array; var successNum = 0, refundNum = 0; angular.forEach($scope.array, function(item) { if (item.s08 == 'Complete') { successNum++; } else if (item.s08 == 'Refund') { refundNum++; } }) if (successNum + refundNum == 0) { $scope.summary = '暂无缴费信息。如有疑问,请联系管理员。' } else { $scope.summary = "您有 " + successNum + " 条支付成功的订单。 "; if (refundNum > 0) { $scope.summary += refundNum + " 条已退款订单。" } } } else { $scope.summary = '操作失败,请联系管理员。' } }); } $scope.load(); } ]).controller('StdScoreCtrl', [ '$rootScope', '$scope', '$http', '$timeout', '$state', '$stateParams', function($rootScope, $scope, $http, $timeout, $state, $stateParams) { $scope.load = function() { $rootScope.curPage = 'score'; $scope.std = $rootScope.ArtStdReg; } $scope.load(); } ]).controller('EnrolNoticeCtrl', [ '$rootScope', '$scope', '$http', '$timeout', '$state', '$stateParams', '$interval', function($rootScope, $scope, $http, $timeout, $state, $stateParams, $interval) { $scope.load = function() { $scope.category_id = $stateParams.category_id; $scope.readTimeLeft = 1; $scope.timer = $interval(function() { if ($scope.readTimeLeft > 0) { $scope.readTimeLeft--; } else { $interval.cancel($scope.timer); } }, 1000); } $scope.load(); $scope.goEnrolGuide = function() { var val=$('input:radio[name="readName"]:checked').val(); if(val==null) { alert("您是否已仔细阅读报考需知!"); return false; } else { $state.go('enrol_guide', { category_id : $scope.category_id }); } } } ]).controller('ReaderDownloadCtrl', [ '$rootScope', '$scope', '$http', '$timeout', '$state', '$stateParams', '$interval', function($rootScope, $scope, $http, $timeout, $state, $stateParams, $interval) { $scope.load = function() { $scope.category_id = $stateParams.category_id; $scope.i05 = $stateParams.i05; $scope.i04 = $stateParams.i04; $scope.readTimeLeft = 1; $scope.timer = $interval(function() { if ($scope.readTimeLeft > 0) { $scope.readTimeLeft--; } else { $interval.cancel($scope.timer); } }, 1000); } $scope.load(); $scope.goReaderDownload2 = function(i05,i04) { $.ajax({ url : '../enrol/gobal/std/ticket/pdf.htm', data : { i05 : i05, std_id : i04 }, async : false, type : "POST", dataType : "json", success : function(data) { window.open(data.entity); } }); } } ]).controller('ExamCardCtrl', [ '$rootScope', '$scope', '$http', '$timeout', '$state', '$stateParams', function($rootScope, $scope, $http, $timeout, $state, $stateParams) { $scope.load = function() { $scope.enrol_id = $stateParams.enrol_id; $scope.myPromise = $http({ url : '../enrol/gobal/std/enrol/info.htm', method : 'post', data : { std_id : $rootScope.ArtStdReg.std_id, enrol_id : $stateParams.enrol_id } }).success(function(data) { $scope.map = data.map; $scope.std = $rootScope.ArtStdReg; $scope.writeSubjects = []; $scope.faceSubjects = []; angular.forEach($scope.map.SubjectArray, function(subject) { if (subject.subject_type == 'Write') { $scope.writeSubjects.push(subject); } else { $scope.faceSubjects.push(subject); } }) }); } $scope.load(); $scope.downloadPdf = function() { $scope.myPromise = $http({ url : '../enrol/gobal/std/enrol/pdf.htm', method : 'post', data : { std_id : $rootScope.ArtStdReg.std_id, enrol_id : $scope.enrol_id } }).success(function(data) { console.log(data); }); } } ]).controller('ModifyTracksCtrl', [ '$rootScope', '$scope', '$http', '$timeout', '$state', '$stateParams', 'toaster', function($rootScope, $scope, $http, $timeout, $state, $stateParams, toaster) { $scope.load = function() { $scope.enrol_id = $stateParams.enrol_id; $http({ url : '../enrol/gobal/std/tracks/list.htm', method : 'post', data : { enrol_id: $stateParams.enrol_id } }).success(function(data) { $scope.tracksList = data.array; }); } $scope.load(); //保存修改的曲目 $scope.saveTracks = function() { //不为空判断 var tracksArr = []; for(var tracks of $scope.tracksList) { var arr = tracks.tracksList; for(var item of arr) { if(!item.tracks_name) { $rootScope.errorMsg("请填写曲目!"); return; } tracksArr.push(item); } //曲目重复判断 if(tracksArr && tracksArr.length > 0) { for(var i=0; i< tracksArr.length; i++) { for(var j = i+1; j< tracksArr.length; j++) { if(tracksArr[i].tracks_name.replace(/^\s*|\s*$/g,"") == tracksArr[j].tracks_name.replace(/^\s*|\s*$/g,"")) { $rootScope.errorMsg("["+ tracks.variety_name +"]曲目填报的名称不能相同!"); return; } } } } } var d = dialog({ title : '操作提示', content : '请确定更改曲目吗?', ok : function() { $scope.processing = true; $scope.myPromise = $http({ url : '../enrol/gobal/std/tracks/update.htm', method : 'post', data : { tracks_json : JSON.stringify(tracksArr) } }).success(function(data) { $rootScope.dialogMsg("修改成功!", function() { $state.go('enrol_main', { }); }); }).error(function() { $scope.processing = undefined; }); }, cancel : function() { }, okValue : '确定无误', cancelValue : '重新检查信息', width : 350 }); d.showModal(); } } ]);