新增 admin 下 由于文件夹名称log而丢失的文件

This commit is contained in:
张乐
2020-08-17 16:17:57 +08:00
parent ec489d879d
commit d941bd215d
25 changed files with 503 additions and 559 deletions

14
admin/.editorconfig Normal file
View File

@@ -0,0 +1,14 @@
# https://editorconfig.org
root = true
[*]
charset = utf-8
indent_style = space
indent_size = 2
end_of_line = lf
insert_final_newline = true
trim_trailing_whitespace = true
[*.md]
insert_final_newline = false
trim_trailing_whitespace = false

View File

@@ -384,13 +384,13 @@ export const asyncRoutes = [
}, },
{ {
path: '/error-log', path: '/error-integralLog',
component: 'layout/Layout', component: 'layout/Layout',
redirect: 'noRedirect', redirect: 'noRedirect',
children: [ children: [
{ {
path: 'log', path: 'log',
component: 'views/error-log/index', component: 'views/error-integralLog/index',
name: 'ErrorLog', name: 'ErrorLog',
meta: { title: 'Error Log', icon: 'bug' } meta: { title: 'Error Log', icon: 'bug' }
} }

View File

@@ -1217,7 +1217,7 @@ baidu.sio.callByServer = /**@function*/function(url, callback, opt_options) {
/** /**
* 通过请求一个图片的方式令服务器存储一条日志 * 通过请求一个图片的方式令服务器存储一条日志
* @function * @function
* @grammar baidu.sio.log(url) * @grammar baidu.sio.integralLog(url)
* @param {string} url 要发送的地址. * @param {string} url 要发送的地址.
* @author: int08h,leeight * @author: int08h,leeight
*/ */

View File

@@ -2657,7 +2657,7 @@ typeof(exports) != 'undefined' ? exports.SyntaxHighlighter = SyntaxHighlighter :
var functions = 'assert isalnum isalpha iscntrl isdigit isgraph islower isprint' + var functions = 'assert isalnum isalpha iscntrl isdigit isgraph islower isprint' +
'ispunct isspace isupper isxdigit tolower toupper errno localeconv ' + 'ispunct isspace isupper isxdigit tolower toupper errno localeconv ' +
'setlocale acos asin atan atan2 ceil cos cosh exp fabs floor fmod ' + 'setlocale acos asin atan atan2 ceil cos cosh exp fabs floor fmod ' +
'frexp ldexp log log10 modf pow sin sinh sqrt tan tanh jmp_buf ' + 'frexp ldexp integralLog log10 modf pow sin sinh sqrt tan tanh jmp_buf ' +
'longjmp setjmp raise signal sig_atomic_t va_arg va_end va_start ' + 'longjmp setjmp raise signal sig_atomic_t va_arg va_end va_start ' +
'clearerr fclose feof ferror fflush fgetc fgetpos fgets fopen ' + 'clearerr fclose feof ferror fflush fgetc fgetpos fgets fopen ' +
'fprintf fputc fputs fread freopen fscanf fseek fsetpos ftell ' + 'fprintf fputc fputs fread freopen fscanf fseek fsetpos ftell ' +
@@ -3104,7 +3104,7 @@ typeof(exports) != 'undefined' ? exports.SyntaxHighlighter = SyntaxHighlighter :
'getprotobyname getprotobynumber getprotoent getpwent getpwnam getpwuid ' + 'getprotobyname getprotobynumber getprotoent getpwent getpwnam getpwuid ' +
'getservbyname getservbyport getservent getsockname getsockopt glob ' + 'getservbyname getservbyport getservent getsockname getsockopt glob ' +
'gmtime grep hex index int ioctl join keys kill lc lcfirst length link ' + 'gmtime grep hex index int ioctl join keys kill lc lcfirst length link ' +
'listen localtime lock log lstat map mkdir msgctl msgget msgrcv msgsnd ' + 'listen localtime lock integralLog lstat map mkdir msgctl msgget msgrcv msgsnd ' +
'oct open opendir ord pack pipe pop pos print printf prototype push ' + 'oct open opendir ord pack pipe pop pos print printf prototype push ' +
'quotemeta rand read readdir readline readlink readpipe recv rename ' + 'quotemeta rand read readdir readline readlink readpipe recv rename ' +
'reset reverse rewinddir rindex rmdir scalar seek seekdir select semctl ' + 'reset reverse rewinddir rindex rmdir scalar seek seekdir select semctl ' +

View File

@@ -7013,13 +7013,13 @@ Axis.prototype = {
val = val * sign + cvsOffset; val = val * sign + cvsOffset;
val -= minPixelPadding; val -= minPixelPadding;
returnValue = val / localA + localMin; // from chart pixel to value returnValue = val / localA + localMin; // from chart pixel to value
if (postTranslate) { // log and ordinal axes if (postTranslate) { // integralLog and ordinal axes
returnValue = axis.lin2val(returnValue); returnValue = axis.lin2val(returnValue);
} }
// From value to pixels // From value to pixels
} else { } else {
if (postTranslate) { // log and ordinal axes if (postTranslate) { // integralLog and ordinal axes
val = axis.val2lin(val); val = axis.val2lin(val);
} }
if (pointPlacement === 'between') { if (pointPlacement === 'between') {
@@ -7487,7 +7487,7 @@ Axis.prototype = {
if (isLog) { if (isLog) {
if (!secondPass && mathMin(axis.min, pick(axis.dataMin, axis.min)) <= 0) { // #978 if (!secondPass && mathMin(axis.min, pick(axis.dataMin, axis.min)) <= 0) { // #978
error(10, 1); // Can't plot negative values on log axis error(10, 1); // Can't plot negative values on integralLog axis
} }
axis.min = correctFloat(log2lin(axis.min)); // correctFloat cures #934 axis.min = correctFloat(log2lin(axis.min)); // correctFloat cures #934
axis.max = correctFloat(log2lin(axis.max)); axis.max = correctFloat(log2lin(axis.max));
@@ -8039,7 +8039,7 @@ Axis.prototype = {
lineNo = i % autoStaggerLines; lineNo = i % autoStaggerLines;
if (w) { if (w) {
x = axis.translate(pos); // don't handle log x = axis.translate(pos); // don't handle integralLog
if (lastRight[lineNo] !== UNDEFINED && x < lastRight[lineNo]) { if (lastRight[lineNo] !== UNDEFINED && x < lastRight[lineNo]) {
overlap = true; overlap = true;
} }
@@ -13596,7 +13596,7 @@ Series.prototype = {
yDataLength = yData.length, yDataLength = yData.length,
activeYData = [], activeYData = [],
activeCounter = 0, activeCounter = 0,
xExtremes = xAxis.getExtremes(), // #2117, need to compensate for log X axis xExtremes = xAxis.getExtremes(), // #2117, need to compensate for integralLog X axis
xMin = xExtremes.min, xMin = xExtremes.min,
xMax = xExtremes.max, xMax = xExtremes.max,
validValue, validValue,
@@ -13671,7 +13671,7 @@ Series.prototype = {
pointStack, pointStack,
stackValues; stackValues;
// Discard disallowed y values for log axes // Discard disallowed y values for integralLog axes
if (yAxis.isLog && yValue <= 0) { if (yAxis.isLog && yValue <= 0) {
point.y = yValue = null; point.y = yValue = null;
} }

View File

@@ -1247,7 +1247,7 @@ vjs.getAbsoluteURL = function(url){
return url; return url;
}; };
// usage: log('inside coolFunc',this,arguments); // usage: integralLog('inside coolFunc',this,arguments);
// http://paulirish.com/2009/log-a-lightweight-wrapper-for-consolelog/ // http://paulirish.com/2009/log-a-lightweight-wrapper-for-consolelog/
vjs.log = function(){ vjs.log = function(){
vjs.log.history = vjs.log.history || []; // store logs to an array for reference vjs.log.history = vjs.log.history || []; // store logs to an array for reference
@@ -1312,7 +1312,7 @@ vjs.findPosition = function(el) {
* Components are also event emitters. * Components are also event emitters.
* *
* button.on('click', function(){ * button.on('click', function(){
* console.log('Button Clicked!'); * console.integralLog('Button Clicked!');
* }); * });
* *
* button.trigger('customevent'); * button.trigger('customevent');
@@ -2984,13 +2984,13 @@ vjs.Player.prototype.unloadTech = function(){
// Then with the new fullscreen API, Mozilla and webkit browsers will reload the flash object after going to fullscreen. // Then with the new fullscreen API, Mozilla and webkit browsers will reload the flash object after going to fullscreen.
// To get around this, we're unloading the tech, caching source and currentTime values, and reloading the tech once the plugin is resized. // To get around this, we're unloading the tech, caching source and currentTime values, and reloading the tech once the plugin is resized.
// reloadTech: function(betweenFn){ // reloadTech: function(betweenFn){
// vjs.log('unloadingTech') // vjs.integralLog('unloadingTech')
// this.unloadTech(); // this.unloadTech();
// vjs.log('unloadedTech') // vjs.integralLog('unloadedTech')
// if (betweenFn) { betweenFn.call(); } // if (betweenFn) { betweenFn.call(); }
// vjs.log('LoadingTech') // vjs.integralLog('LoadingTech')
// this.loadTech(this.techName, { src: this.cache_.src }) // this.loadTech(this.techName, { src: this.cache_.src })
// vjs.log('loadedTech') // vjs.integralLog('loadedTech')
// }, // },
/* Fallbacks for unsupported event types /* Fallbacks for unsupported event types
@@ -3026,7 +3026,7 @@ vjs.Player.prototype.trackProgress = function(){
this.progressInterval = setInterval(vjs.bind(this, function(){ this.progressInterval = setInterval(vjs.bind(this, function(){
// Don't trigger unless buffered amount is greater than last time // Don't trigger unless buffered amount is greater than last time
// log(this.cache_.bufferEnd, this.buffered().end(0), this.duration()) // integralLog(this.cache_.bufferEnd, this.buffered().end(0), this.duration())
/* TODO: update for multiple buffered regions */ /* TODO: update for multiple buffered regions */
if (this.cache_.bufferEnd < this.buffered().end(0)) { if (this.cache_.bufferEnd < this.buffered().end(0)) {
this.trigger('progress'); this.trigger('progress');
@@ -6941,7 +6941,7 @@ vjs.ChaptersTrackMenuItem.prototype.update = function(){
var cue = this.cue, var cue = this.cue,
currentTime = this.player_.currentTime(); currentTime = this.player_.currentTime();
// vjs.log(currentTime, cue.startTime); // vjs.integralLog(currentTime, cue.startTime);
this.selected(cue.startTime <= currentTime && currentTime < cue.endTime); this.selected(cue.startTime <= currentTime && currentTime < cue.endTime);
}; };

View File

@@ -306,15 +306,15 @@
* @return {Class} 返回子类。 * @return {Class} 返回子类。
* @example * @example
* function Person() { * function Person() {
* console.log( 'Super' ); * console.integralLog( 'Super' );
* } * }
* Person.prototype.hello = function() { * Person.prototype.hello = function() {
* console.log( 'hello' ); * console.integralLog( 'hello' );
* }; * };
* *
* var Manager = Base.inherits( Person, { * var Manager = Base.inherits( Person, {
* world: function() { * world: function() {
* console.log( 'World' ); * console.integralLog( 'World' );
* } * }
* }); * });
* *
@@ -326,7 +326,7 @@
* instance.world(); // => World * instance.world(); // => World
* *
* // 子类的__super__属性指向父类 * // 子类的__super__属性指向父类
* console.log( Manager.__super__ === Person ); // => true * console.integralLog( Manager.__super__ === Person ); // => true
*/ */
inherits: function( Super, protos, staticProtos ) { inherits: function( Super, protos, staticProtos ) {
var child; var child;
@@ -370,7 +370,7 @@
* @method bindFn * @method bindFn
* @example * @example
* var doSomething = function() { * var doSomething = function() {
* console.log( this.name ); * console.integralLog( this.name );
* }, * },
* obj = { * obj = {
* name: 'Object Name' * name: 'Object Name'
@@ -383,9 +383,9 @@
bindFn: bindFn, bindFn: bindFn,
/** /**
* 引用Console.log如果存在的话否则引用一个[空函数loop](#WebUploader:Base.log)。 * 引用Console.log如果存在的话否则引用一个[空函数loop](#WebUploader:Base.integralLog)。
* @grammar Base.log( args... ) => undefined * @grammar Base.integralLog( args... ) => undefined
* @method log * @method integralLog
*/ */
log: (function() { log: (function() {
if ( window.console ) { if ( window.console ) {
@@ -420,7 +420,7 @@
* @example * @example
* function doSomthing() { * function doSomthing() {
* var args = Base.slice( arguments, 1 ); * var args = Base.slice( arguments, 1 );
* console.log( args ); * console.integralLog( args );
* } * }
* *
* doSomthing( 'ignored', 'arg2', 'arg3' ); // => Array ["arg2", "arg3"] * doSomthing( 'ignored', 'arg2', 'arg3' ); // => Array ["arg2", "arg3"]
@@ -458,12 +458,12 @@
* @param {Number} [pointLength=2] 精确到的小数点数。 * @param {Number} [pointLength=2] 精确到的小数点数。
* @param {Array} [units=[ 'B', 'K', 'M', 'G', 'TB' ]] 单位数组。从字节到千字节一直往上指定。如果单位数组里面只指定了到了K(千字节)同时文件大小大于M, 此方法的输出将还是显示成多少K. * @param {Array} [units=[ 'B', 'K', 'M', 'G', 'TB' ]] 单位数组。从字节到千字节一直往上指定。如果单位数组里面只指定了到了K(千字节)同时文件大小大于M, 此方法的输出将还是显示成多少K.
* @example * @example
* console.log( Base.formatSize( 100 ) ); // => 100B * console.integralLog( Base.formatSize( 100 ) ); // => 100B
* console.log( Base.formatSize( 1024 ) ); // => 1.00K * console.integralLog( Base.formatSize( 1024 ) ); // => 1.00K
* console.log( Base.formatSize( 1024, 0 ) ); // => 1K * console.integralLog( Base.formatSize( 1024, 0 ) ); // => 1K
* console.log( Base.formatSize( 1024 * 1024 ) ); // => 1.00M * console.integralLog( Base.formatSize( 1024 * 1024 ) ); // => 1.00M
* console.log( Base.formatSize( 1024 * 1024 * 1024 ) ); // => 1.00G * console.integralLog( Base.formatSize( 1024 * 1024 * 1024 ) ); // => 1.00G
* console.log( Base.formatSize( 1024 * 1024 * 1024, 0, ['B', 'KB', 'MB'] ) ); // => 1024MB * console.integralLog( Base.formatSize( 1024 * 1024 * 1024, 0, ['B', 'KB', 'MB'] ) ); // => 1024MB
*/ */
formatSize: function( size, pointLength, units ) { formatSize: function( size, pointLength, units ) {
var unit; var unit;
@@ -540,7 +540,7 @@
* Mediator.installTo( obj ); * Mediator.installTo( obj );
* *
* obj.on( 'testa', function( arg1, arg2 ) { * obj.on( 'testa', function( arg1, arg2 ) {
* console.log( arg1, arg2 ); // => 'arg1', 'arg2' * console.integralLog( arg1, arg2 ); // => 'arg1', 'arg2'
* }); * });
* *
* obj.trigger( 'testa', 'arg1', 'arg2' ); * obj.trigger( 'testa', 'arg1', 'arg2' );
@@ -553,7 +553,7 @@
* 就是第一个参数为`type`,记录当前是什么事件在触发。此类`callback`的优先级比脚低,会再正常`callback`执行完后触发。 * 就是第一个参数为`type`,记录当前是什么事件在触发。此类`callback`的优先级比脚低,会再正常`callback`执行完后触发。
* ```javascript * ```javascript
* obj.on( 'all', function( type, arg1, arg2 ) { * obj.on( 'all', function( type, arg1, arg2 ) {
* console.log( type, arg1, arg2 ); // => 'testa', 'arg1', 'arg2' * console.integralLog( type, arg1, arg2 ); // => 'testa', 'arg1', 'arg2'
* }); * });
* ``` * ```
* *
@@ -2625,8 +2625,8 @@
* @description 返回指定状态的文件集合,不传参数将返回所有状态的文件。 * @description 返回指定状态的文件集合,不传参数将返回所有状态的文件。
* @for Uploader * @for Uploader
* @example * @example
* console.log( uploader.getFiles() ); // => all files * console.integralLog( uploader.getFiles() ); // => all files
* console.log( uploader.getFiles('error') ) // => all error files. * console.integralLog( uploader.getFiles('error') ) // => all error files.
*/ */
getFiles: function() { getFiles: function() {
return this.queue.getFiles.apply( this.queue, arguments ); return this.queue.getFiles.apply( this.queue, arguments );
@@ -4198,7 +4198,7 @@
// i, // i,
// b; // b;
// if (!length || offset + length > dataView.byteLength) { // if (!length || offset + length > dataView.byteLength) {
// Base.log('Invalid Exif data: Invalid thumbnail data.'); // Base.integralLog('Invalid Exif data: Invalid thumbnail data.');
// return; // return;
// } // }
// hexData = []; // hexData = [];
@@ -5376,7 +5376,7 @@
// benchmarking // benchmarking
// var duration = new Date().getTime() - time_start; // var duration = new Date().getTime() - time_start;
// console.log('Encoding time: '+ currentQuality + 'ms'); // console.integralLog('Encoding time: '+ currentQuality + 'ms');
// //
return jpegDataUri return jpegDataUri
@@ -5401,7 +5401,7 @@
initQuantTables(sf); initQuantTables(sf);
currentQuality = quality; currentQuality = quality;
// console.log('Quality set to: '+quality +'%'); // console.integralLog('Quality set to: '+quality +'%');
} }
function init(){ function init(){
@@ -5415,7 +5415,7 @@
setQuality(quality); setQuality(quality);
// var duration = new Date().getTime() - time_start; // var duration = new Date().getTime() - time_start;
// console.log('Initialization '+ duration + 'ms'); // console.integralLog('Initialization '+ duration + 'ms');
} }
init(); init();

View File

@@ -306,15 +306,15 @@
* @return {Class} 返回子类。 * @return {Class} 返回子类。
* @example * @example
* function Person() { * function Person() {
* console.log( 'Super' ); * console.integralLog( 'Super' );
* } * }
* Person.prototype.hello = function() { * Person.prototype.hello = function() {
* console.log( 'hello' ); * console.integralLog( 'hello' );
* }; * };
* *
* var Manager = Base.inherits( Person, { * var Manager = Base.inherits( Person, {
* world: function() { * world: function() {
* console.log( 'World' ); * console.integralLog( 'World' );
* } * }
* }); * });
* *
@@ -326,7 +326,7 @@
* instance.world(); // => World * instance.world(); // => World
* *
* // 子类的__super__属性指向父类 * // 子类的__super__属性指向父类
* console.log( Manager.__super__ === Person ); // => true * console.integralLog( Manager.__super__ === Person ); // => true
*/ */
inherits: function( Super, protos, staticProtos ) { inherits: function( Super, protos, staticProtos ) {
var child; var child;
@@ -370,7 +370,7 @@
* @method bindFn * @method bindFn
* @example * @example
* var doSomething = function() { * var doSomething = function() {
* console.log( this.name ); * console.integralLog( this.name );
* }, * },
* obj = { * obj = {
* name: 'Object Name' * name: 'Object Name'
@@ -383,9 +383,9 @@
bindFn: bindFn, bindFn: bindFn,
/** /**
* 引用Console.log如果存在的话否则引用一个[空函数loop](#WebUploader:Base.log)。 * 引用Console.log如果存在的话否则引用一个[空函数loop](#WebUploader:Base.integralLog)。
* @grammar Base.log( args... ) => undefined * @grammar Base.integralLog( args... ) => undefined
* @method log * @method integralLog
*/ */
log: (function() { log: (function() {
if ( window.console ) { if ( window.console ) {
@@ -420,7 +420,7 @@
* @example * @example
* function doSomthing() { * function doSomthing() {
* var args = Base.slice( arguments, 1 ); * var args = Base.slice( arguments, 1 );
* console.log( args ); * console.integralLog( args );
* } * }
* *
* doSomthing( 'ignored', 'arg2', 'arg3' ); // => Array ["arg2", "arg3"] * doSomthing( 'ignored', 'arg2', 'arg3' ); // => Array ["arg2", "arg3"]
@@ -458,12 +458,12 @@
* @param {Number} [pointLength=2] 精确到的小数点数。 * @param {Number} [pointLength=2] 精确到的小数点数。
* @param {Array} [units=[ 'B', 'K', 'M', 'G', 'TB' ]] 单位数组。从字节到千字节一直往上指定。如果单位数组里面只指定了到了K(千字节)同时文件大小大于M, 此方法的输出将还是显示成多少K. * @param {Array} [units=[ 'B', 'K', 'M', 'G', 'TB' ]] 单位数组。从字节到千字节一直往上指定。如果单位数组里面只指定了到了K(千字节)同时文件大小大于M, 此方法的输出将还是显示成多少K.
* @example * @example
* console.log( Base.formatSize( 100 ) ); // => 100B * console.integralLog( Base.formatSize( 100 ) ); // => 100B
* console.log( Base.formatSize( 1024 ) ); // => 1.00K * console.integralLog( Base.formatSize( 1024 ) ); // => 1.00K
* console.log( Base.formatSize( 1024, 0 ) ); // => 1K * console.integralLog( Base.formatSize( 1024, 0 ) ); // => 1K
* console.log( Base.formatSize( 1024 * 1024 ) ); // => 1.00M * console.integralLog( Base.formatSize( 1024 * 1024 ) ); // => 1.00M
* console.log( Base.formatSize( 1024 * 1024 * 1024 ) ); // => 1.00G * console.integralLog( Base.formatSize( 1024 * 1024 * 1024 ) ); // => 1.00G
* console.log( Base.formatSize( 1024 * 1024 * 1024, 0, ['B', 'KB', 'MB'] ) ); // => 1024MB * console.integralLog( Base.formatSize( 1024 * 1024 * 1024, 0, ['B', 'KB', 'MB'] ) ); // => 1024MB
*/ */
formatSize: function( size, pointLength, units ) { formatSize: function( size, pointLength, units ) {
var unit; var unit;
@@ -540,7 +540,7 @@
* Mediator.installTo( obj ); * Mediator.installTo( obj );
* *
* obj.on( 'testa', function( arg1, arg2 ) { * obj.on( 'testa', function( arg1, arg2 ) {
* console.log( arg1, arg2 ); // => 'arg1', 'arg2' * console.integralLog( arg1, arg2 ); // => 'arg1', 'arg2'
* }); * });
* *
* obj.trigger( 'testa', 'arg1', 'arg2' ); * obj.trigger( 'testa', 'arg1', 'arg2' );
@@ -553,7 +553,7 @@
* 就是第一个参数为`type`,记录当前是什么事件在触发。此类`callback`的优先级比脚低,会再正常`callback`执行完后触发。 * 就是第一个参数为`type`,记录当前是什么事件在触发。此类`callback`的优先级比脚低,会再正常`callback`执行完后触发。
* ```javascript * ```javascript
* obj.on( 'all', function( type, arg1, arg2 ) { * obj.on( 'all', function( type, arg1, arg2 ) {
* console.log( type, arg1, arg2 ); // => 'testa', 'arg1', 'arg2' * console.integralLog( type, arg1, arg2 ); // => 'testa', 'arg1', 'arg2'
* }); * });
* ``` * ```
* *
@@ -2625,8 +2625,8 @@
* @description 返回指定状态的文件集合,不传参数将返回所有状态的文件。 * @description 返回指定状态的文件集合,不传参数将返回所有状态的文件。
* @for Uploader * @for Uploader
* @example * @example
* console.log( uploader.getFiles() ); // => all files * console.integralLog( uploader.getFiles() ); // => all files
* console.log( uploader.getFiles('error') ) // => all error files. * console.integralLog( uploader.getFiles('error') ) // => all error files.
*/ */
getFiles: function() { getFiles: function() {
return this.queue.getFiles.apply( this.queue, arguments ); return this.queue.getFiles.apply( this.queue, arguments );
@@ -3853,7 +3853,7 @@
uid = parts[ 0 ]; uid = parts[ 0 ];
type = parts[ 1 ]; type = parts[ 1 ];
// console.log.apply( console, arguments ); // console.integralLog.apply( console, arguments );
if ( type === 'Ready' && uid === me.uid ) { if ( type === 'Ready' && uid === me.uid ) {
me.trigger('ready'); me.trigger('ready');
@@ -3861,7 +3861,7 @@
clients[ uid ].trigger( type.toLowerCase(), evt, obj ); clients[ uid ].trigger( type.toLowerCase(), evt, obj );
} }
// Base.log( evt, obj ); // Base.integralLog( evt, obj );
} }
// flash的接受器。 // flash的接受器。

View File

@@ -306,15 +306,15 @@
* @return {Class} 返回子类。 * @return {Class} 返回子类。
* @example * @example
* function Person() { * function Person() {
* console.log( 'Super' ); * console.integralLog( 'Super' );
* } * }
* Person.prototype.hello = function() { * Person.prototype.hello = function() {
* console.log( 'hello' ); * console.integralLog( 'hello' );
* }; * };
* *
* var Manager = Base.inherits( Person, { * var Manager = Base.inherits( Person, {
* world: function() { * world: function() {
* console.log( 'World' ); * console.integralLog( 'World' );
* } * }
* }); * });
* *
@@ -326,7 +326,7 @@
* instance.world(); // => World * instance.world(); // => World
* *
* // 子类的__super__属性指向父类 * // 子类的__super__属性指向父类
* console.log( Manager.__super__ === Person ); // => true * console.integralLog( Manager.__super__ === Person ); // => true
*/ */
inherits: function( Super, protos, staticProtos ) { inherits: function( Super, protos, staticProtos ) {
var child; var child;
@@ -370,7 +370,7 @@
* @method bindFn * @method bindFn
* @example * @example
* var doSomething = function() { * var doSomething = function() {
* console.log( this.name ); * console.integralLog( this.name );
* }, * },
* obj = { * obj = {
* name: 'Object Name' * name: 'Object Name'
@@ -383,9 +383,9 @@
bindFn: bindFn, bindFn: bindFn,
/** /**
* 引用Console.log如果存在的话否则引用一个[空函数loop](#WebUploader:Base.log)。 * 引用Console.log如果存在的话否则引用一个[空函数loop](#WebUploader:Base.integralLog)。
* @grammar Base.log( args... ) => undefined * @grammar Base.integralLog( args... ) => undefined
* @method log * @method integralLog
*/ */
log: (function() { log: (function() {
if ( window.console ) { if ( window.console ) {
@@ -420,7 +420,7 @@
* @example * @example
* function doSomthing() { * function doSomthing() {
* var args = Base.slice( arguments, 1 ); * var args = Base.slice( arguments, 1 );
* console.log( args ); * console.integralLog( args );
* } * }
* *
* doSomthing( 'ignored', 'arg2', 'arg3' ); // => Array ["arg2", "arg3"] * doSomthing( 'ignored', 'arg2', 'arg3' ); // => Array ["arg2", "arg3"]
@@ -458,12 +458,12 @@
* @param {Number} [pointLength=2] 精确到的小数点数。 * @param {Number} [pointLength=2] 精确到的小数点数。
* @param {Array} [units=[ 'B', 'K', 'M', 'G', 'TB' ]] 单位数组。从字节到千字节一直往上指定。如果单位数组里面只指定了到了K(千字节)同时文件大小大于M, 此方法的输出将还是显示成多少K. * @param {Array} [units=[ 'B', 'K', 'M', 'G', 'TB' ]] 单位数组。从字节到千字节一直往上指定。如果单位数组里面只指定了到了K(千字节)同时文件大小大于M, 此方法的输出将还是显示成多少K.
* @example * @example
* console.log( Base.formatSize( 100 ) ); // => 100B * console.integralLog( Base.formatSize( 100 ) ); // => 100B
* console.log( Base.formatSize( 1024 ) ); // => 1.00K * console.integralLog( Base.formatSize( 1024 ) ); // => 1.00K
* console.log( Base.formatSize( 1024, 0 ) ); // => 1K * console.integralLog( Base.formatSize( 1024, 0 ) ); // => 1K
* console.log( Base.formatSize( 1024 * 1024 ) ); // => 1.00M * console.integralLog( Base.formatSize( 1024 * 1024 ) ); // => 1.00M
* console.log( Base.formatSize( 1024 * 1024 * 1024 ) ); // => 1.00G * console.integralLog( Base.formatSize( 1024 * 1024 * 1024 ) ); // => 1.00G
* console.log( Base.formatSize( 1024 * 1024 * 1024, 0, ['B', 'KB', 'MB'] ) ); // => 1024MB * console.integralLog( Base.formatSize( 1024 * 1024 * 1024, 0, ['B', 'KB', 'MB'] ) ); // => 1024MB
*/ */
formatSize: function( size, pointLength, units ) { formatSize: function( size, pointLength, units ) {
var unit; var unit;
@@ -540,7 +540,7 @@
* Mediator.installTo( obj ); * Mediator.installTo( obj );
* *
* obj.on( 'testa', function( arg1, arg2 ) { * obj.on( 'testa', function( arg1, arg2 ) {
* console.log( arg1, arg2 ); // => 'arg1', 'arg2' * console.integralLog( arg1, arg2 ); // => 'arg1', 'arg2'
* }); * });
* *
* obj.trigger( 'testa', 'arg1', 'arg2' ); * obj.trigger( 'testa', 'arg1', 'arg2' );
@@ -553,7 +553,7 @@
* 就是第一个参数为`type`,记录当前是什么事件在触发。此类`callback`的优先级比脚低,会再正常`callback`执行完后触发。 * 就是第一个参数为`type`,记录当前是什么事件在触发。此类`callback`的优先级比脚低,会再正常`callback`执行完后触发。
* ```javascript * ```javascript
* obj.on( 'all', function( type, arg1, arg2 ) { * obj.on( 'all', function( type, arg1, arg2 ) {
* console.log( type, arg1, arg2 ); // => 'testa', 'arg1', 'arg2' * console.integralLog( type, arg1, arg2 ); // => 'testa', 'arg1', 'arg2'
* }); * });
* ``` * ```
* *
@@ -2819,8 +2819,8 @@
* @description 返回指定状态的文件集合,不传参数将返回所有状态的文件。 * @description 返回指定状态的文件集合,不传参数将返回所有状态的文件。
* @for Uploader * @for Uploader
* @example * @example
* console.log( uploader.getFiles() ); // => all files * console.integralLog( uploader.getFiles() ); // => all files
* console.log( uploader.getFiles('error') ) // => all error files. * console.integralLog( uploader.getFiles('error') ) // => all error files.
*/ */
getFiles: function() { getFiles: function() {
return this.queue.getFiles.apply( this.queue, arguments ); return this.queue.getFiles.apply( this.queue, arguments );
@@ -4872,7 +4872,7 @@
// i, // i,
// b; // b;
// if (!length || offset + length > dataView.byteLength) { // if (!length || offset + length > dataView.byteLength) {
// Base.log('Invalid Exif data: Invalid thumbnail data.'); // Base.integralLog('Invalid Exif data: Invalid thumbnail data.');
// return; // return;
// } // }
// hexData = []; // hexData = [];

View File

@@ -306,15 +306,15 @@
* @return {Class} 返回子类。 * @return {Class} 返回子类。
* @example * @example
* function Person() { * function Person() {
* console.log( 'Super' ); * console.integralLog( 'Super' );
* } * }
* Person.prototype.hello = function() { * Person.prototype.hello = function() {
* console.log( 'hello' ); * console.integralLog( 'hello' );
* }; * };
* *
* var Manager = Base.inherits( Person, { * var Manager = Base.inherits( Person, {
* world: function() { * world: function() {
* console.log( 'World' ); * console.integralLog( 'World' );
* } * }
* }); * });
* *
@@ -326,7 +326,7 @@
* instance.world(); // => World * instance.world(); // => World
* *
* // 子类的__super__属性指向父类 * // 子类的__super__属性指向父类
* console.log( Manager.__super__ === Person ); // => true * console.integralLog( Manager.__super__ === Person ); // => true
*/ */
inherits: function( Super, protos, staticProtos ) { inherits: function( Super, protos, staticProtos ) {
var child; var child;
@@ -370,7 +370,7 @@
* @method bindFn * @method bindFn
* @example * @example
* var doSomething = function() { * var doSomething = function() {
* console.log( this.name ); * console.integralLog( this.name );
* }, * },
* obj = { * obj = {
* name: 'Object Name' * name: 'Object Name'
@@ -383,9 +383,9 @@
bindFn: bindFn, bindFn: bindFn,
/** /**
* 引用Console.log如果存在的话否则引用一个[空函数loop](#WebUploader:Base.log)。 * 引用Console.log如果存在的话否则引用一个[空函数loop](#WebUploader:Base.integralLog)。
* @grammar Base.log( args... ) => undefined * @grammar Base.integralLog( args... ) => undefined
* @method log * @method integralLog
*/ */
log: (function() { log: (function() {
if ( window.console ) { if ( window.console ) {
@@ -420,7 +420,7 @@
* @example * @example
* function doSomthing() { * function doSomthing() {
* var args = Base.slice( arguments, 1 ); * var args = Base.slice( arguments, 1 );
* console.log( args ); * console.integralLog( args );
* } * }
* *
* doSomthing( 'ignored', 'arg2', 'arg3' ); // => Array ["arg2", "arg3"] * doSomthing( 'ignored', 'arg2', 'arg3' ); // => Array ["arg2", "arg3"]
@@ -458,12 +458,12 @@
* @param {Number} [pointLength=2] 精确到的小数点数。 * @param {Number} [pointLength=2] 精确到的小数点数。
* @param {Array} [units=[ 'B', 'K', 'M', 'G', 'TB' ]] 单位数组。从字节到千字节一直往上指定。如果单位数组里面只指定了到了K(千字节)同时文件大小大于M, 此方法的输出将还是显示成多少K. * @param {Array} [units=[ 'B', 'K', 'M', 'G', 'TB' ]] 单位数组。从字节到千字节一直往上指定。如果单位数组里面只指定了到了K(千字节)同时文件大小大于M, 此方法的输出将还是显示成多少K.
* @example * @example
* console.log( Base.formatSize( 100 ) ); // => 100B * console.integralLog( Base.formatSize( 100 ) ); // => 100B
* console.log( Base.formatSize( 1024 ) ); // => 1.00K * console.integralLog( Base.formatSize( 1024 ) ); // => 1.00K
* console.log( Base.formatSize( 1024, 0 ) ); // => 1K * console.integralLog( Base.formatSize( 1024, 0 ) ); // => 1K
* console.log( Base.formatSize( 1024 * 1024 ) ); // => 1.00M * console.integralLog( Base.formatSize( 1024 * 1024 ) ); // => 1.00M
* console.log( Base.formatSize( 1024 * 1024 * 1024 ) ); // => 1.00G * console.integralLog( Base.formatSize( 1024 * 1024 * 1024 ) ); // => 1.00G
* console.log( Base.formatSize( 1024 * 1024 * 1024, 0, ['B', 'KB', 'MB'] ) ); // => 1024MB * console.integralLog( Base.formatSize( 1024 * 1024 * 1024, 0, ['B', 'KB', 'MB'] ) ); // => 1024MB
*/ */
formatSize: function( size, pointLength, units ) { formatSize: function( size, pointLength, units ) {
var unit; var unit;
@@ -540,7 +540,7 @@
* Mediator.installTo( obj ); * Mediator.installTo( obj );
* *
* obj.on( 'testa', function( arg1, arg2 ) { * obj.on( 'testa', function( arg1, arg2 ) {
* console.log( arg1, arg2 ); // => 'arg1', 'arg2' * console.integralLog( arg1, arg2 ); // => 'arg1', 'arg2'
* }); * });
* *
* obj.trigger( 'testa', 'arg1', 'arg2' ); * obj.trigger( 'testa', 'arg1', 'arg2' );
@@ -553,7 +553,7 @@
* 就是第一个参数为`type`,记录当前是什么事件在触发。此类`callback`的优先级比脚低,会再正常`callback`执行完后触发。 * 就是第一个参数为`type`,记录当前是什么事件在触发。此类`callback`的优先级比脚低,会再正常`callback`执行完后触发。
* ```javascript * ```javascript
* obj.on( 'all', function( type, arg1, arg2 ) { * obj.on( 'all', function( type, arg1, arg2 ) {
* console.log( type, arg1, arg2 ); // => 'testa', 'arg1', 'arg2' * console.integralLog( type, arg1, arg2 ); // => 'testa', 'arg1', 'arg2'
* }); * });
* ``` * ```
* *
@@ -2819,8 +2819,8 @@
* @description 返回指定状态的文件集合,不传参数将返回所有状态的文件。 * @description 返回指定状态的文件集合,不传参数将返回所有状态的文件。
* @for Uploader * @for Uploader
* @example * @example
* console.log( uploader.getFiles() ); // => all files * console.integralLog( uploader.getFiles() ); // => all files
* console.log( uploader.getFiles('error') ) // => all error files. * console.integralLog( uploader.getFiles('error') ) // => all error files.
*/ */
getFiles: function() { getFiles: function() {
return this.queue.getFiles.apply( this.queue, arguments ); return this.queue.getFiles.apply( this.queue, arguments );
@@ -4872,7 +4872,7 @@
// i, // i,
// b; // b;
// if (!length || offset + length > dataView.byteLength) { // if (!length || offset + length > dataView.byteLength) {
// Base.log('Invalid Exif data: Invalid thumbnail data.'); // Base.integralLog('Invalid Exif data: Invalid thumbnail data.');
// return; // return;
// } // }
// hexData = []; // hexData = [];
@@ -5657,7 +5657,7 @@
// benchmarking // benchmarking
// var duration = new Date().getTime() - time_start; // var duration = new Date().getTime() - time_start;
// console.log('Encoding time: '+ currentQuality + 'ms'); // console.integralLog('Encoding time: '+ currentQuality + 'ms');
// //
return jpegDataUri return jpegDataUri
@@ -5682,7 +5682,7 @@
initQuantTables(sf); initQuantTables(sf);
currentQuality = quality; currentQuality = quality;
// console.log('Quality set to: '+quality +'%'); // console.integralLog('Quality set to: '+quality +'%');
} }
function init(){ function init(){
@@ -5696,7 +5696,7 @@
setQuality(quality); setQuality(quality);
// var duration = new Date().getTime() - time_start; // var duration = new Date().getTime() - time_start;
// console.log('Initialization '+ duration + 'ms'); // console.integralLog('Initialization '+ duration + 'ms');
} }
init(); init();
@@ -6399,7 +6399,7 @@
uid = parts[ 0 ]; uid = parts[ 0 ];
type = parts[ 1 ]; type = parts[ 1 ];
// console.log.apply( console, arguments ); // console.integralLog.apply( console, arguments );
if ( type === 'Ready' && uid === me.uid ) { if ( type === 'Ready' && uid === me.uid ) {
me.trigger('ready'); me.trigger('ready');
@@ -6407,7 +6407,7 @@
clients[ uid ].trigger( type.toLowerCase(), evt, obj ); clients[ uid ].trigger( type.toLowerCase(), evt, obj );
} }
// Base.log( evt, obj ); // Base.integralLog( evt, obj );
} }
// flash的接受器。 // flash的接受器。

View File

@@ -306,15 +306,15 @@
* @return {Class} 返回子类。 * @return {Class} 返回子类。
* @example * @example
* function Person() { * function Person() {
* console.log( 'Super' ); * console.integralLog( 'Super' );
* } * }
* Person.prototype.hello = function() { * Person.prototype.hello = function() {
* console.log( 'hello' ); * console.integralLog( 'hello' );
* }; * };
* *
* var Manager = Base.inherits( Person, { * var Manager = Base.inherits( Person, {
* world: function() { * world: function() {
* console.log( 'World' ); * console.integralLog( 'World' );
* } * }
* }); * });
* *
@@ -326,7 +326,7 @@
* instance.world(); // => World * instance.world(); // => World
* *
* // 子类的__super__属性指向父类 * // 子类的__super__属性指向父类
* console.log( Manager.__super__ === Person ); // => true * console.integralLog( Manager.__super__ === Person ); // => true
*/ */
inherits: function( Super, protos, staticProtos ) { inherits: function( Super, protos, staticProtos ) {
var child; var child;
@@ -370,7 +370,7 @@
* @method bindFn * @method bindFn
* @example * @example
* var doSomething = function() { * var doSomething = function() {
* console.log( this.name ); * console.integralLog( this.name );
* }, * },
* obj = { * obj = {
* name: 'Object Name' * name: 'Object Name'
@@ -383,9 +383,9 @@
bindFn: bindFn, bindFn: bindFn,
/** /**
* 引用Console.log如果存在的话否则引用一个[空函数loop](#WebUploader:Base.log)。 * 引用Console.log如果存在的话否则引用一个[空函数loop](#WebUploader:Base.integralLog)。
* @grammar Base.log( args... ) => undefined * @grammar Base.integralLog( args... ) => undefined
* @method log * @method integralLog
*/ */
log: (function() { log: (function() {
if ( window.console ) { if ( window.console ) {
@@ -420,7 +420,7 @@
* @example * @example
* function doSomthing() { * function doSomthing() {
* var args = Base.slice( arguments, 1 ); * var args = Base.slice( arguments, 1 );
* console.log( args ); * console.integralLog( args );
* } * }
* *
* doSomthing( 'ignored', 'arg2', 'arg3' ); // => Array ["arg2", "arg3"] * doSomthing( 'ignored', 'arg2', 'arg3' ); // => Array ["arg2", "arg3"]
@@ -458,12 +458,12 @@
* @param {Number} [pointLength=2] 精确到的小数点数。 * @param {Number} [pointLength=2] 精确到的小数点数。
* @param {Array} [units=[ 'B', 'K', 'M', 'G', 'TB' ]] 单位数组。从字节到千字节一直往上指定。如果单位数组里面只指定了到了K(千字节)同时文件大小大于M, 此方法的输出将还是显示成多少K. * @param {Array} [units=[ 'B', 'K', 'M', 'G', 'TB' ]] 单位数组。从字节到千字节一直往上指定。如果单位数组里面只指定了到了K(千字节)同时文件大小大于M, 此方法的输出将还是显示成多少K.
* @example * @example
* console.log( Base.formatSize( 100 ) ); // => 100B * console.integralLog( Base.formatSize( 100 ) ); // => 100B
* console.log( Base.formatSize( 1024 ) ); // => 1.00K * console.integralLog( Base.formatSize( 1024 ) ); // => 1.00K
* console.log( Base.formatSize( 1024, 0 ) ); // => 1K * console.integralLog( Base.formatSize( 1024, 0 ) ); // => 1K
* console.log( Base.formatSize( 1024 * 1024 ) ); // => 1.00M * console.integralLog( Base.formatSize( 1024 * 1024 ) ); // => 1.00M
* console.log( Base.formatSize( 1024 * 1024 * 1024 ) ); // => 1.00G * console.integralLog( Base.formatSize( 1024 * 1024 * 1024 ) ); // => 1.00G
* console.log( Base.formatSize( 1024 * 1024 * 1024, 0, ['B', 'KB', 'MB'] ) ); // => 1024MB * console.integralLog( Base.formatSize( 1024 * 1024 * 1024, 0, ['B', 'KB', 'MB'] ) ); // => 1024MB
*/ */
formatSize: function( size, pointLength, units ) { formatSize: function( size, pointLength, units ) {
var unit; var unit;
@@ -540,7 +540,7 @@
* Mediator.installTo( obj ); * Mediator.installTo( obj );
* *
* obj.on( 'testa', function( arg1, arg2 ) { * obj.on( 'testa', function( arg1, arg2 ) {
* console.log( arg1, arg2 ); // => 'arg1', 'arg2' * console.integralLog( arg1, arg2 ); // => 'arg1', 'arg2'
* }); * });
* *
* obj.trigger( 'testa', 'arg1', 'arg2' ); * obj.trigger( 'testa', 'arg1', 'arg2' );
@@ -553,7 +553,7 @@
* 就是第一个参数为`type`,记录当前是什么事件在触发。此类`callback`的优先级比脚低,会再正常`callback`执行完后触发。 * 就是第一个参数为`type`,记录当前是什么事件在触发。此类`callback`的优先级比脚低,会再正常`callback`执行完后触发。
* ```javascript * ```javascript
* obj.on( 'all', function( type, arg1, arg2 ) { * obj.on( 'all', function( type, arg1, arg2 ) {
* console.log( type, arg1, arg2 ); // => 'testa', 'arg1', 'arg2' * console.integralLog( type, arg1, arg2 ); // => 'testa', 'arg1', 'arg2'
* }); * });
* ``` * ```
* *
@@ -2453,8 +2453,8 @@
* @description 返回指定状态的文件集合,不传参数将返回所有状态的文件。 * @description 返回指定状态的文件集合,不传参数将返回所有状态的文件。
* @for Uploader * @for Uploader
* @example * @example
* console.log( uploader.getFiles() ); // => all files * console.integralLog( uploader.getFiles() ); // => all files
* console.log( uploader.getFiles('error') ) // => all error files. * console.integralLog( uploader.getFiles('error') ) // => all error files.
*/ */
getFiles: function() { getFiles: function() {
return this.queue.getFiles.apply( this.queue, arguments ); return this.queue.getFiles.apply( this.queue, arguments );
@@ -4291,7 +4291,7 @@
uid = parts[ 0 ]; uid = parts[ 0 ];
type = parts[ 1 ]; type = parts[ 1 ];
// console.log.apply( console, arguments ); // console.integralLog.apply( console, arguments );
if ( type === 'Ready' && uid === me.uid ) { if ( type === 'Ready' && uid === me.uid ) {
me.trigger('ready'); me.trigger('ready');
@@ -4299,7 +4299,7 @@
clients[ uid ].trigger( type.toLowerCase(), evt, obj ); clients[ uid ].trigger( type.toLowerCase(), evt, obj );
} }
// Base.log( evt, obj ); // Base.integralLog( evt, obj );
} }
// flash的接受器。 // flash的接受器。

File diff suppressed because it is too large Load Diff

View File

@@ -181,7 +181,7 @@ export default {
status: null, status: null,
name: null, name: null,
page: constants.page.page, page: constants.page.page,
limit: constants.page.limit[1] limit: constants.page.limit[0]
}, },
viewInfoConfig: { viewInfoConfig: {
data: null, data: null,
@@ -201,7 +201,6 @@ export default {
handleEditMenu(rowData) { handleEditMenu(rowData) {
this.editDialogConfig.isCreate = 1 this.editDialogConfig.isCreate = 1
this.editDialogConfig.data = rowData this.editDialogConfig.data = rowData
console.log(this.editDialogConfig.data)
this.editDialogConfig.prent = rowData this.editDialogConfig.prent = rowData
this.editDialogConfig.visible = true this.editDialogConfig.visible = true
}, },
@@ -229,7 +228,7 @@ export default {
const _pram = { type: this.biztype.value, status: this.selectModel ? 1 : -1 } const _pram = { type: this.biztype.value, status: this.selectModel ? 1 : -1 }
this.biztype.value!==3 ? categoryApi.treeCategroy(_pram).then(data => { this.biztype.value!==3 ? categoryApi.treeCategroy(_pram).then(data => {
this.treeList = this.handleAddArrt(data) this.treeList = this.handleAddArrt(data)
}) : categoryApi.listCategroy({ type: 3, status: '' }).then(data => { }) : categoryApi.listCategroy({ type: 3, status: '', pid: this.listPram.pid}).then(data => {
this.treeList = data.list this.treeList = data.list
}) })
}, },

View File

@@ -89,7 +89,7 @@ export default {
// monaco.editor.create(document.getElementById("editorJson"), { // monaco.editor.create(document.getElementById("editorJson"), {
// value: [ // value: [
// "function x() {", // "function x() {",
// '\tconsole.log("Hello world!");', // '\tconsole.integralLog("Hello world!");',
// "}"].join( // "}"].join(
// "\n" // "\n"
// ), // ),

View File

@@ -178,7 +178,7 @@ export default {
// }) // })
// }).catch(err => { // }).catch(err => {
// failure('出现未知问题,刷新页面,或者联系程序员') // failure('出现未知问题,刷新页面,或者联系程序员')
// console.log(err); // console.integralLog(err);
// }); // });
// }, // },
}) })

View File

@@ -282,9 +282,9 @@ export default {
reader.readAsDataURL(this.localFile);// 这里也可以直接写参数event.raw reader.readAsDataURL(this.localFile);// 这里也可以直接写参数event.raw
// 转换成功后的操作reader.result即为转换后的DataURL // 转换成功后的操作reader.result即为转换后的DataURL
// 它不需要自己定义你可以console.log(reader.result)看一下 // 它不需要自己定义你可以console.integralLog(reader.result)看一下
reader.onload=()=>{ reader.onload=()=>{
// console.log(reader.result) // console.integralLog(reader.result)
} }
/* 另外一种本地预览方法 */ /* 另外一种本地预览方法 */

View File

@@ -36,7 +36,7 @@ import { loadScriptQueue } from '@/components/FormGenerator/utils/loadScript'
import './icons' // icon import './icons' // icon
import './permission' // permission control import './permission' // permission control
import './utils/error-log' // error log import './utils/error-log' // error integralLog
import * as filters from './filters' // global filters import * as filters from './filters' // global filters
Vue.use(VueLazyload, { Vue.use(VueLazyload, {

View File

@@ -168,7 +168,7 @@ export const constantRoutes = [
}, },
{ {
path: 'integrallog', path: 'integrallog',
component: () => import('@/views/marketing/integral/log/index'), component: () => import('@/views/marketing/integral/integralLog/index'),
name: 'DatasIntegralLog', name: 'DatasIntegralLog',
meta: { title: '积分日志', icon: '' } meta: { title: '积分日志', icon: '' }
} }

View File

@@ -122,7 +122,7 @@ const marketingRouter = {
}, },
{ {
path: 'integrallog', path: 'integrallog',
component: () => import('@/views/marketing/integral/log/index'), component: () => import('@/views/marketing/integral/integralLog/index'),
name: 'integralLog', name: 'integralLog',
meta: { title: '积分日志', icon: '' } meta: { title: '积分日志', icon: '' }
} }

View File

@@ -59,7 +59,7 @@ service.interceptors.response.use(
// 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired; // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
if (res.code === 401) { if (res.code === 401) {
// to re-login // to re-login
MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', { MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or integralLog in again', 'Confirm logout', {
confirmButtonText: 'Re-Login', confirmButtonText: 'Re-Login',
cancelButtonText: 'Cancel', cancelButtonText: 'Cancel',
type: 'warning' type: 'warning'

View File

@@ -1,6 +1,6 @@
<template> <template>
<div class="components-container"> <div class="components-container">
<category-list :biztype="constants.categoryType[2]" /> <category-list :biztype="constants.categoryType[2]" :pid="0"/>
</div> </div>
</template> </template>

View File

@@ -0,0 +1,185 @@
<template>
<div class="divBox">
<el-card class="box-card">
<div slot="header" class="clearfix">
<div class="container">
<el-form size="small" label-width="100px">
<el-form-item label="时间选择:" class="width100">
<el-radio-group v-model="tableFrom.dateLimit" type="button" class="mr20" size="small"
@change="selectChange(tableFrom.dateLimit)">
<el-radio-button v-for="(item,i) in fromList.fromTxt" :key="i" :label="item.val">{{ item.text }}
</el-radio-button>
</el-radio-group>
<el-date-picker v-model="timeVal" value-format="yyyy/MM/dd" format="yyyy/MM/dd" size="small"
type="daterange" placement="bottom-end" placeholder="自定义时间" style="width: 250px;"
@change="onchangeTime"/>
</el-form-item>
<el-form-item label="用户搜索:">
<el-select v-model="tableFrom.userIdList" style="width: 500px" reserve-keyword multiple remote filterable
:remote-method="remoteMethod" :loading="loading" placeholder="请输入用户名称" clearable @change="seachList">
<el-option
v-for="item in options"
:key="item.uid"
:label="item.nickname"
:value="item.uid">
</el-option>
</el-select>
</el-form-item>
</el-form>
</div>
<!--<cards-data :cardLists="cardLists"></cards-data>-->
</div>
<el-table
v-loading="listLoading"
:data="tableData.data"
style="width: 100%"
size="mini"
class="table"
highlight-current-row
>
<el-table-column
prop="id"
label="ID"
width="60"
/>
<el-table-column
prop="title"
label="标题"
min-width="130"
/>
<el-table-column
sortable
prop="balance"
label="积分余量"
min-width="120"
/>
<el-table-column
sortable
label="明细数字"
min-width="120"
prop="number"
/>
<el-table-column
label="备注"
min-width="120"
prop="mark"
/>
<el-table-column
label="用户微信昵称"
min-width="120"
prop="nickName"
/>
<el-table-column
prop="createTime"
label=" 添加时间"
min-width="150"
/>
</el-table>
<div class="block">
<el-pagination
:page-sizes="[20, 40, 60, 80]"
:page-size="tableFrom.limit"
:current-page="tableFrom.page"
layout="total, sizes, prev, pager, next, jumper"
:total="tableData.total"
@size-change="handleSizeChange"
@current-change="pageChange"
/>
</div>
</el-card>
</div>
</template>
<script>
import { fromList } from '@/utils/constants.js'
import { integralListApi } from '@/api/marketing'
import { userListApi } from '@/api/user'
import cardsData from '@/components/cards/index'
export default {
components: { cardsData },
data() {
return {
loading: false,
options: [],
fromList: fromList,
listLoading: false,
tableData: {
data: [],
total: 0
},
tableFrom: {
page: 1,
limit: 20,
category: 'integral',
dateLimit: '',
userIdList: []
},
userIdList: [],
userList: [],
timeVal: [],
values: []
}
},
mounted() {
this.getList()
// this.getUserList()
},
methods: {
remoteMethod(query) {
console.log(query)
if (query !== '') {
this.loading = true;
setTimeout(() => {
this.loading = false;
userListApi({keywords: query, page: 1, limit: 10}).then(res => {
this.options = res.list
})
}, 200);
} else {
this.options = [];
}
},
seachList() {
this.tableFrom.page = 1
this.getList()
},
// 选择时间
selectChange (tab) {
this.tableFrom.dateLimit = tab
this.tableFrom.page = 1
this.timeVal = [];
this.getList();
},
// 具体日期
onchangeTime (e) {
this.timeVal = e;
this.tableFrom.dateLimit = e ? this.timeVal.join(',') : ''
this.tableFrom.page = 1
this.getList();
},
// 列表
getList() {
this.listLoading = true
integralListApi({ limit:this.tableFrom.limit, page: this.tableFrom.page}, this.tableFrom).then(res => {
this.tableData.data = res.list
this.tableData.total = res.total
this.listLoading = false
}).catch(res => {
this.listLoading = false
})
},
pageChange(page) {
this.tableFrom.page = page
this.getList()
},
handleSizeChange(val) {
this.tableFrom.limit = val
this.getList()
},
}
}
</script>
<style lang="sass" scoped>
</style>

View File

@@ -264,7 +264,7 @@ export default {
this.$refs['ruleForm'].resetFields() this.$refs['ruleForm'].resetFields()
}, },
changeRegion(value) { changeRegion(value) {
// console.log(value) // console.integralLog(value)
}, },
changeRadio(num) { changeRadio(num) {
this.columns = Object.assign({}, statusMap[num - 1]) this.columns = Object.assign({}, statusMap[num - 1])
@@ -316,7 +316,7 @@ export default {
this.shippingFree() this.shippingFree()
} }
}).catch(res => { }).catch(res => {
// console.log(res) // console.integralLog(res)
this.$message.error(res.message) this.$message.error(res.message)
this.$nextTick(() => { this.$nextTick(() => {
loadingInstance.close() loadingInstance.close()
@@ -348,7 +348,7 @@ export default {
// 列表 // 列表
getCityList() { getCityList() {
logistics.cityListTree().then(res => { logistics.cityListTree().then(res => {
// console.log(res, 'getCityList') // console.integralLog(res, 'getCityList')
res.forEach((el, index) => { res.forEach((el, index) => {
el.child.forEach((cel, j) => { el.child.forEach((cel, j) => {
delete cel.child delete cel.child

View File

@@ -99,7 +99,7 @@ export default {
// if(tab.$children[0].panes){ // todo 优化。。。 // if(tab.$children[0].panes){ // todo 优化。。。
// this.activeNamel2 = tab.$children[0].panes[0].name // this.activeNamel2 = tab.$children[0].panes[0].name
// }else{ // }else{
// conaole.log() // conaole.integralLog()
// } // }
let _selected = tab.$children[0].panes[0] let _selected = tab.$children[0].panes[0]
// 设置特殊处理的文件长传表单默认选中第一个tab // 设置特殊处理的文件长传表单默认选中第一个tab

View File

@@ -1,254 +0,0 @@
<template>
<div class="divBox">
<el-card class="box-card">
{{activeNamel1}}
<el-tabs v-model="activeNamel1" @tab-click="handleTabClick">
<el-tab-pane
v-for="tab,index in treeList"
:key="index"
:label="tab.name"
:name="tab.extra"
>
<!-- 文件上传特殊处理-->
<template v-if="activeNamel1 == 4">
<el-radio-group v-model="activeNamel2" class="mb10">
<el-radio v-for="tabItem,itemIndex in tab.child"
:key="itemIndex"
:label="tabItem.name" @change="()=>handleItemTabClick(tabItem.extra)">{{tabItem.name}}</el-radio>
</el-radio-group>
<parser
v-if="formConfChild.render"
:is-edit="formConfChild.isEdit"
:form-conf="formConfChild.content"
:form-edit-data="currentEditData"
@submit="handlerSubmit"
/>
</template>
<!-- 正常配置渲染-->
<template v-else>
{{activeNamel2}}
<el-tabs v-if="tab.child.length > 0" v-model="activeNamel2"
type="border-card" @tab-click="handleItemTabClick">
<el-tab-pane
v-for="tabItem,itemIndex in tab.child"
:key="itemIndex"
:label="tabItem.name"
:name="tabItem.extra"
>
<parser
v-if="formConfChild.render"
:is-edit="formConfChild.isEdit"
:form-conf="formConfChild.content"
:form-edit-data="currentEditData"
@submit="handlerSubmit"
/>
</el-tab-pane>
</el-tabs>
<span v-else>
<parser
v-if="formConf.render"
:is-edit="formConf.isEdit"
:form-conf="formConf.content"
:form-edit-data="currentEditData"
@submit="handlerSubmit"
/>
</span>
</template>
</el-tab-pane>
</el-tabs>
</el-card>
</div>
</template>
<script>
import parser from '@/components/FormGenerator/components/parser/Parser'
import * as constants from '@/utils/constants.js'
import * as categoryApi from '@/api/categoryApi.js'
import * as selfUtil from '@/utils/ZBKJIutil.js'
import * as systemFormConfigApi from '@/api/systemFormConfig.js'
import * as systemSettingApi from '@/api/systemSetting.js'
import * as systemConfigApi from '@/api/systemConfig.js'
import Template from "@/views/appSetting/wxAccount/wxTemplate/index";
import {beautifierConf} from "@/components/FormGenerator/utils";
export default {
// name: "index",
components: {Template, parser },
data() {
return {
formConf: { content: { fields: [] }, id: null, render: false, isEdit: false },
formConfChild: { content: { fields: [] }, id: null, render: false, isEdit: false },
activeNamel1: null,
activeNamel2: '本地(不推荐)',//针对文件特殊处理
treeList: [],
editDataChild: {},
isCreate: 0,
currentEditId: null,
currentEditData: null,
currentSelectedUploadFlag:null,
}
},
mounted() {
console.log(this.$route.path.split("/")[1])
this.handlerGetTreeList()
this.getCurrentUploadSelectedFlag()
},
methods: {
handleTabClick(tab, event) {
console.log(tab)
if (tab.name) {
this.handlerGetLevel1FormConfig(tab.name)
} else if (tab.$children.length > 0 ) { // 初次加载第二层的第一个Tab数据
// if(tab.$children[0].panes){ // todo 优化。。。
// this.activeNamel2 = tab.$children[0].panes[0].name
// }else{
// conaole.log()
// }
let _selected = tab.$children[0].panes[0]
// 设置特殊处理的文件长传表单默认选中第一个tab
this.activeNamel2 = _selected.name != 72 ? _selected.name : _selected.label
console.log(this.activeNamel2)
if(this.activeNamel2 == 108){
switch (this.currentSelectedUploadFlag) {
case 1:
this.activeNamel2 = '本地(不推荐)'
this.handlerGetLevel2FormConfig(108)
break
case 2:
this.activeNamel2 = '阿里云配置'
this.handlerGetLevel2FormConfig(81)
break
case 3:
this.activeNamel2 = '七牛云配置'
this.handlerGetLevel2FormConfig(82)
break
case 4:
this.activeNamel2 = '腾讯云配置'
this.handlerGetLevel2FormConfig(83)
break
}
}else{
this.handlerGetLevel2FormConfig(_selected.name)
}
}
},
handlerGetLevel1FormConfig(id) {
const formPram = { id: id }
this.currentEditId = id
this.formConf.content = { fields: [] }
this.formConf.render = false
systemFormConfigApi.getFormConfigInfo(formPram).then(data => {
const { id, name, info, content } = data
this.formConf.content = JSON.parse(content)
this.formConf.id = id
this.handlerGetSettingInfo(id, 1)
})
},
handleItemTabClick(tab, event) { //这里对tabs=tab.name和radio=id做了兼容
let _id = tab.name ? tab.name : tab
if(!_id) return this.$message.error('表单配置不正确,请关联正确表单后使用')
this.handlerGetLevel2FormConfig(_id)
},
handlerGetLevel2FormConfig(id) {
const formPram = { id: id }
this.currentEditId = id
this.formConfChild.content = { fields: [] }
this.formConfChild.render = false
systemFormConfigApi.getFormConfigInfo(formPram).then(data => {
const { id, name, info, content } = data
this.formConfChild.content = JSON.parse(content)
this.formConfChild.id = id
this.handlerGetSettingInfo(id, 2)
})
},
handlerGetSettingInfo(id, level) {
systemSettingApi.systemConfigInfo({ id: id }).then(data => {
this.currentEditData = data
if (level === 1) {
this.formConf.isEdit = this.currentEditData !== null
this.formConf.render = true
} else {
this.formConfChild.isEdit = this.currentEditData !== null
this.formConfChild.render = true
}
})
},
handlerSubmit(formValue) {
this.handlerSave(formValue)
},
handlerSave(formValue) {
const _pram = this.buildFormPram(formValue)
let _formId = 0
systemSettingApi.systemConfigSave(_pram).then(data => {
this.$message.success('添加数据成功')
// 81 82 83
// 针对云存储配置特殊处理 切勿随意改动
_formId = parseInt(_pram.id)
if(_formId === 108 || _formId === 81 || _formId === 82 || _formId === 83){
let _value
switch (_formId) {
case 108: _value = 1
break;
case 81: _value = 2
break;
case 82: _value = 3
break;
case 83: _value = 4
break;
}
const _pram = { key:"uploadType",value:_value }
systemConfigApi.configSaveUniq(_pram)
}
})
},
handlerGetTreeList() {
const _pram = { type: constants.categoryType[5].value, status: -1 }
categoryApi.treeCategroy(_pram).then(data => {
this.treeList = this.handleAddArrt(data)
if (this.treeList.length > 0) this.activeNamel1 = this.treeList[0].extra
if (this.treeList.length > 0 && this.treeList[0].child.length > 0) {
this.activeNamel2 = this.treeList[0].child[0].extra
}
if (this.activeNamel2) {
this.handlerGetLevel2FormConfig(this.treeList[0].child[0].extra)
} else {
this.handlerGetLevel1FormConfig(this.treeList[0].extra)
}
})
},
handleAddArrt(treeData) {
// let _result = this.addTreeListLabel(treeData)
const _result = selfUtil.addTreeListLabel(treeData)
console.log(_result)
return _result
},
buildFormPram(formValue) {
const _pram = {
fields: [],
id: this.currentEditId,
sort: 0, // 参数暂时无用
status: true // 参数暂时无用
}
const _fields = []
Object.keys(formValue).forEach((key) => {
_fields.push({
name: key,
title: key,
value: formValue[key] || '1111'
})
})
_pram.fields = _fields
return _pram
},
getCurrentUploadSelectedFlag(){
systemConfigApi.configGetUniq({key:"uploadType"}).then(data => {
this.currentSelectedUploadFlag = parseInt(data)
})
}
}
}
</script>
<style scoped>
</style>