gistfile1.txt ///////////////////js保存数据和获取数据////////////////////////////////var JobCircle = JobCircle || {};JobCircle.Util = JobCircle.Util || {};JobCircle.Util.Common = JobCircle.Util.Common || {};/** * 将json对象转换为
///////////////////js保存数据和获取数据//////////////////////////////// var JobCircle = JobCircle || {}; JobCircle.Util = JobCircle.Util || {}; JobCircle.Util.Common = JobCircle.Util.Common || {}; /** * 将json对象转换为字符串 * @param {Object} obj */ JobCircle.Util.Common.JsonToString = function(obj){ var THIS = this; switch (typeof(obj)) { case 'string': return '"' + obj.replace(/(["\\])/g, '\\$1') + '"'; case 'array': return '[' + obj.map(JobCircle.Util.Common.JsonToString).join(',') + ']'; case 'object': if (obj instanceof Array) { var strArr = []; var len = obj.length; for (var i = 0; i < len; i++) { strArr.push(JobCircle.Util.Common.JsonToString(obj[i])); } return '[' + strArr.join(',') + ']'; } else if (obj == null) { return 'null'; } else { var string = []; for (var property in obj) string.push(JobCircle.Util.Common.JsonToString(property) + ':' + JobCircle.Util.Common.JsonToString(obj[property])); return '{' + string.join(',') + '}'; } case 'number': return obj; case false: return obj; } }; /** * 利用Window.name去保存数据 * @param {Object} name * @param {Object} value */ JobCircle.Util.Common.setSession = function(name,value){ var wn = null; try{ //parseJSON是讲字符串转换为json对象 wn = $.parseJSON(window.name); if(wn == null){ wn = {}; } }catch(e){ if(!wn) wn = {}; } wn[name] = value; try{ window.name = JobCircle.Util.Common.JsonToString(wn); }catch(ex){ return null; } return value; }; /** * 利用window.name去获取数据 * @param {Object} name */ JobCircle.Util.Common.getSession = function(name,isParent){ var value = null; try{ if(isParent === true ){ value = $.parseJSON(parent.window.name) || {}; }else{ value = $.parseJSON(window.name) || {}; } }catch(e){ if(name == 'user.id'){ return null; } return {}; } return value[name]; } /** * 传入一个字符串,获取出他的长度(中文当作2个长度) * @param {Object} str */ JobCircle.Util.Common.GetLength = function(str){ if(str == null){ return 0; }else { return str.replace(/[^\x00-\xff]/g, '**').length; } }; /** * 打印一个对象的所有属性,调试用 * @param {Object} */ JobCircle.Util.Common.printObjetProperty=function(o){ var s="",count=0; $.each( o, function(i, n){ s+=i + " : " + n+" , "; if(count%6==0){ s+="\n"; } count++; }); return s; } //格式化日期 Date.prototype.Format = function (fmt) { var o = { "M+": this.getMonth() + 1, //月份 "d+": this.getDate(), //日 "h+": this.getHours(), //小时 "m+": this.getMinutes(), //分 "s+": this.getSeconds(), //秒 "q+": Math.floor((this.getMonth() + 3) / 3), //季度 "S": this.getMilliseconds() //毫秒 }; if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length)); for (var k in o) if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length))); return fmt; } //使用日期格式化 $scope.userCreateTime = $scope.token.user.createdts == null ? '' : new Date($scope.token.user.createdts).Format("yyyy-MM-dd hh:mm:ss"); //////////////////angulajs保存数据和获取数据以及发送请求/////////////////////////// angular.module('admin.services', []) .factory('adService', function ($http, $cookies) { var ad = {}; ad.ctrl = '/'; ad.index = function (success, error) { var url = this.ctrl + 'demo'; var data = JSON.stringify({"account": "abc", "password": "123"}); this.postWithLoading(url, data, success, error); }; ad.success = function () { showTip('操作成功'); }; ad.getWithCB = function (url, data, success, error) { var loading = showLoading(); $http({ url: url, method: 'GET' }).success(function (result, status, headers, config) { closeLoading(loading); if (result.code == 0) { if(success){ success(result); } else { ad.success(); } } else { if (!result.desc) { result = JSON.parse(result); } if (result.code == -7) { var cb = function () { window.location = '/'; }; showTipWithCb(res.desc, cb); return; } if (error) { error(result); } else { showTip(result.desc); } } }).error(function (result, status, headers, config) { closeLoading(loading); showSysError(); }); }; ad.get = function (url, params, success, error) { var loading = showLoading(); $http({ url: url, params: params, method: 'GET' }).success(function (result, status, headers, config) { closeLoading(loading); if (result.code == 0) { success ? success(result) : angular.noop(); } else { if (!result.desc) { result = JSON.parse(result); } if (result.code == -7) { var cb = function () { window.location = '/'; }; showTipWithCb(res.desc, cb); return; } if(error){ error(result); } else { showTip(result.desc); } } }).error(function (result, status, headers, config) { closeLoading(loading); showSysError(); }); }; ad.postWithLoading = function (url, data, success, error) { var loading = showLoading(); $http({ method: 'POST', url: url, data: data, headers: {'Content-Type': 'application/json'} }).success(function (res, status, headers, config) { closeLoading(loading); if (res.code == 0) { if(success){ success(res); } else { ad.success(); } } else { //未登录 if (!res.desc) { res = JSON.parse(res); } if (res.code == -7) { var cb = function () { window.location = '/'; }; showTipWithCb(res.desc, cb); return; } if (error) { error(res); } else { showTip(res.desc); return; } } }).error(function () { closeLoading(loading); showSysError(); }); }; ad.postWithCB = function (url, data, success, error) { $http({ method: 'POST', url: url, data: data, headers: {'Content-Type': 'application/json'} }).success(function (res, status, headers, config) { if (res.code == 0) { if(success){ success(res); } else { ad.success(); } } else { //未登录 //res = JSON.parse(res); if (!res.desc) { res = JSON.parse(res); //"{\"code\":\"-7\",\"desc\":\"尊敬的用户,您没有登录,请先登录\"}" if (res.code == -7) { var cb = function () { window.location = '/'; }; showTipWithCb(res.desc, cb); return; } } if (error) { error(res); } else { showTip(res.desc); } } }).error(function () { showSysError(); }); }; return ad; }) .factory('locals', ['$window', function ($window) { return { //存储单个属性 set: function (key, value) { // $window.localStorage[key] = value; sessionStorage.setItem(key,value); }, //读取单个属性 get: function (key, defaultValue) { //return $window.localStorage[key] || defaultValue; return sessionStorage.getItem(key) || defaultValue; }, //存储对象,以JSON格式存储 setObject: function (key, value) { sessionStorage.setItem(key,JSON.stringify(value)); //$window.localStorage[key] = JSON.stringify(value);//将对象以字符串保存 }, //读取对象 getObject: function (key) { return JSON.parse(sessionStorage.getItem(key) || '{}') //return JSON.parse($window.localStorage[key] || '{}');//获取字符串并解析成对象 } } }]); //使用 angular.module('admin.login.controllers', []) /*登录*/ .controller('login-ctrl', ['$scope', 'adService', '$location', '$rootScope','locals', function ($scope, adService, $location, $rootScope,locals) { $('.login-view-box .error').show(); $rootScope.$on('$stateChangeSuccess', function () { var currentUrl = $location.url(); $scope.showGoLogin = currentUrl == '/login'; }); var showError=function (desc) { $scope.error=desc; $scope.isErrorShow=true; } $(".login-form [require]").on('input', function() { $scope.isErrorShow=false; }) $scope.check=function(type,success){ if(type==1){ if($scope.account==null||$scope.account==''){ showError("手机号码不能为空") return false; }else if(!(/^1[3|4|5|8][0-9]\d{8}$/.test($scope.account))){ showError('您输入的手机号码不正确,请重新输入'); return false; } } if(type==2){ if($scope.account==null||$scope.account==''){ showError("手机号码不能为空") return false; }else if(!(/^1[3|4|5|8][0-9]\d{8}$/.test($scope.account))){ showError('您输入的手机号码不正确,请重新输入'); return false; }else if($scope.password==null||$scope.password==''){ showError("密码不能为空") return false; }else if(success!=null){ success(); } } } $scope.isCustsSelectShow=false; var resultTemp ={} $scope.login=function () { $scope.check(2,function () { adService.postWithLoading("user/login",{account:$scope.account,password:$scope.password}, function (res) { resultTemp = res.result; if(!res.result||!res.result.custs){ showTip("获取用户数据失败!"); }else if(res.result.custs.length>1){ $('#account').attr("disabled",true); $('#password').attr("disabled",true); $('#loginBtn').attr("disabled",true); $scope.isCustsSelectShow=true $scope.custs=res.result.custs; }else{ locals.setObject("token",res.result); //设置数据 window.location.href = "index.html"; } },function (res) { console.info('Login Error!') if(res.code==-3){ showError(res.desc) }else{ showError("您输入的手机号或密码不正确,请重新输入。") } }); }); } //选择商客 $scope.custsChange = function (custsSelect) { console.info(custsSelect); for(i in resultTemp.custs){ if(resultTemp.custs[i].name == custsSelect){ var temp = resultTemp.custs[i]; resultTemp.custs.splice(0,resultTemp.custs.length); resultTemp.custs.push(temp); } } console.info(resultTemp); locals.setObject("token",resultTemp); window.location.href = "index.html"; } } ])