Commit e3b56bcc authored by 吴春's avatar 吴春

没有什么提交的

parent 891d1e21
......@@ -4,835 +4,835 @@ import co from 'co'
import OSS from 'ali-oss'
import MsgBus from '../assets/utils/msgBus'
export default {
data: {
loginUser: {},
apiurl: ''
},
install(Vue, options) {
Vue.prototype.MsgBus = MsgBus;
Vue.prototype.md5 = md5;
Vue.prototype.orderBy=function(source, orders, type) {
if (
source instanceof Array &&
orders instanceof Array &&
orders.length > 0
) {
var ordersc = orders.concat([]);
var sorttype = type || "asc";
var results = [];
var totalSum = {};
function grouporder(source, orders, totalSum) {
source.sort(function(a, b) {
var convertA = a[orders[0]];
var convertB = b[orders[0]];
if (typeof convertA == "string" && typeof convertB == "string") {
if (sorttype.toUpperCase() == "ASC") {
return convertA.localeCompare(convertB);
} else {
return convertB.localeCompare(convertA);
}
} else {
if (sorttype.toUpperCase() == "ASC") {
return convertA - convertB;
} else {
return convertB - convertA;
}
}
});
var groupmap = new Map();
source.forEach(item => {
if (groupmap.has(item[orders[0]])) {
groupmap.get(item[orders[0]]).push(item);
} else {
groupmap.set(item[orders[0]], []);
groupmap.get(item[orders[0]]).push(item);
}
});
orders.shift();
for (let [key, val] of groupmap) {
totalSum[key] = {};
totalSum[key].name = key;
totalSum[key].value = val.length;
if (orders.length == 0) {
results = results.concat(val);
} else {
totalSum[key].children = {};
var orderscopy = orders.concat([]);
grouporder(val, orderscopy, totalSum[key].children);
}
}
}
data: {
loginUser: {},
apiurl: ''
},
install(Vue, options) {
Vue.prototype.MsgBus = MsgBus;
Vue.prototype.md5 = md5;
Vue.prototype.orderBy = function(source, orders, type) {
if (
source instanceof Array &&
orders instanceof Array &&
orders.length > 0
) {
var ordersc = orders.concat([]);
var sorttype = type || "asc";
var results = [];
var totalSum = {};
grouporder(source, ordersc, totalSum);
function grouporder(source, orders, totalSum) {
source.sort(function(a, b) {
var convertA = a[orders[0]];
var convertB = b[orders[0]];
if (typeof convertA == "string" && typeof convertB == "string") {
if (sorttype.toUpperCase() == "ASC") {
return convertA.localeCompare(convertB);
} else {
return convertB.localeCompare(convertA);
}
} else {
if (sorttype.toUpperCase() == "ASC") {
return convertA - convertB;
} else {
return convertB - convertA;
}
}
});
return {
results: results,
totalSum: totalSum
};
} else {
return source;
}
},
Vue.prototype.calcPageSize=function(itemHeight){
let yuHeight=itemHeight
try {
let obj=null
document.querySelectorAll('.frame-box').forEach(x=>{
if(x.style.display!='none'){
obj=x
}
})
let dom=obj.offsetHeight
yuHeight=dom-(obj.querySelector('.v-table-header')?obj.querySelector('.v-table-header').offsetHeight:39)-50//减去面包屑,减去表格头部,减去分页,减去偏量
//减去其它同级元素
obj.childNodes[0].childNodes.forEach(x=>{
if(x.className && x.className.indexOf('v-table-views')==-1){
yuHeight-=x.offsetHeight?x.offsetHeight:0
}
})
} catch (error) {console.log(error)}
return Math.floor(yuHeight/itemHeight)
}
Vue.prototype.random_string = function (len) {
len = len || 32;
var chars = 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678';
var maxPos = chars.length;
var pwd = '';
for (let i = 0; i < len; i++) {
pwd += chars.charAt(Math.floor(Math.random() * maxPos));
}
return pwd;
},
//是否是线上环境【发布时修改为true】
Vue.prototype.isOnline = function () {
return process.env.NODE_ENV !== 'development';
},
//域名管理对象
Vue.prototype.domainManager = function () {
let domainUrl = '';
let locationName = window.location.hostname;
domainUrl = "http://127.0.0.1"; //214主域名
// 127.0.0.12
// domainUrl = "http://192.168.2.88"; //王悦主域名
// domainUrl = "http://127.0.0.1"; //214主域名
// domainUrl = "http://192.168.2.16:8083"; //王悦主域名
// domainUrl = "http://127.0.0.1"; //214主域名
// domainUrl = "http://192.168.2.65:8025"; //吴春主域名
// domainUrl = "http://192.168.2.106:8082"; //罗超主域名
if (locationName.indexOf('oytour')!==-1) {
domainUrl = "https://reborn.oytour.com";
}else if (locationName.indexOf('viitto')!==-1) {
domainUrl = "https://test.viitto.com";
}
var obj = {
//主地址
DomainUrl: domainUrl,
//常用提交数据URL
PostUrl: domainUrl + "/api/common/post",
//上传文件URL
UploadFileUrl: domainUrl + '/api/File/post',
//本站模板文件下载地址
LocalTemplateFileDownLoadUrl: domainUrl,
//阿里服务器地址
AliUrl: "https://reborndev.oss-cn-hangzhou.aliyuncs.com",
//本站文件流下载地址
LocalFileStreamDownLoadUrl: domainUrl + "/api/file/GetFileFromWebApi",
//PDF文件预览地址
PDFViewUrl: domainUrl + "/plug/pdf/web/viewer.html?file=",
//SocketUrl
WebSocketUrl: "ws://192.168.1.110:8080?account=",
//google地图Url
GoogleMapUrl: "http://ditu.google.cn/maps/api/js?key=AIzaSyAZ5MIfzicStzKbIkbI3RcBBeZBjQFKsp0&sensor=false&language=zh-CN",
//google地图图片地址
GoogleMapImageUrl: "http://super.oytour.com",
// "http://upload.oytour.com"
UploadUrl: locationName.indexOf('oytour')!==-1 ? "http://upload.oytour.com" : "http://127.0.0.1:8120"
// UploadUrl: "http://upload.oytour.com"
};
return obj;
},
Vue.prototype.yinyanFn = function (url, successCall, faildCall) {
this.$http.jsonp(url, )
.then(res => {
successCall(res)
}, faildCall)
},
//消息成功提示
Vue.prototype.Success = function (msg) {
this.$message({
message: msg,
duration: 2000,
type: "success"
});
},
//错误提示
Vue.prototype.Error = function (msg) {
this.$message({
message: msg,
duration: 2000,
type: "error"
});
},
//一般提示
Vue.prototype.Info = function (msg) {
this.$message({
message: msg,
duration: 2000,
type: "info"
});
},
//警告提示
Vue.prototype.Warning = function (msg) {
this.$message({
message: msg,
duration: 2000,
type: "warning"
});
},
//Confirm
Vue.prototype.Confirm = function (msg, callback) {
this.$confirm(msg, "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
})
.then(() => {
if (typeof callback === 'function') {
callback();
}
})
.catch(() => {
this.Info("已取消操作");
});
},
//打开新窗口连接
Vue.prototype.OpenNewUrl = function (URL) {
if (URL != '') {
window.open('http://' + URL, '_blank');
}
}
Vue.prototype.uploadImg = function (tcID, msg, successCall, faildCall) {
var apiurl = this.domainManager().Upload + '/Upload/UploadBase64?fileType=1&fileLimit=5&&filePath=Freature/TCID' + tcID;
this.$http.post(apiurl, msg, {
datatype:"jsonP",
}).then(res => {
successCall(res);
}, faildCall)
}
//HTTP提交数据
Vue.prototype.apipost = function (cmd, msg, successCall, faildCall) {
if (msg == null || msg == "") {
msg = {}
}
var apiurl = this.domainManager().PostUrl;
var timestamp = (new Date()).valueOf();
this.apiurl = apiurl;
if (this.$route.path.toLowerCase() == "/signature") {
this.$router.push({
path: '/signature'
})
} else {
if (!localStorage.userInfo && localStorage.userInfo != "" && this.$route.path.toLowerCase() != "/login") {
this.$router.push({
path: '/login'
})
}
}
var token = "";
var key = "";
if (this.getLocalStorage() != null) {
token = this.getLocalStorage().token;
key = this.getLocalStorage().SecretKey;
}
var encodeMsg = encodeURIComponent(JSON.stringify(msg)).toLowerCase();
var md5Str = md5(`cmd=${cmd}&msg=${encodeMsg}&timestamp=${timestamp}&token=${token}&key=${key}`);
var postData = {
"msg": msg,
"cmd": cmd,
"timestamp": timestamp,
"token": token,
"sign": md5Str
}
this.$http.post(apiurl, postData, {
headers: {
'Content-Type': 'application/json',
'Referer-Viitto': this.$route.path
}
})
.then(res => {
if (res.data.resultCode == 10000 || res.data.resultCode == 10001) {
this.$router.push({
path: '/login'
});
} else if (res.resultCode == 10005) {
this.$router.go(-1);
} else {
successCall(res);
}
}, faildCall)
},
//下载文件
Vue.prototype.GetLocalFile = function (cmd, msg, fileName, successCall) {
var apiurl = this.domainManager().LocalFileStreamDownLoadUrl;
var timestamp = (new Date()).valueOf();
if (!localStorage.userInfo && localStorage.userInfo != "" && this.$route.path.toLowerCase() != "/login") {
this.$router.push({
path: '/login'
})
}
var token = "";
var key = "";
if (this.getLocalStorage() != null) {
token = this.getLocalStorage().token;
key = this.getLocalStorage().SecretKey;
}
var encodeMsg = encodeURIComponent(JSON.stringify(msg)).toLowerCase();
var md5Str = md5(`cmd=${cmd}&msg=${encodeMsg}&timestamp=${timestamp}&token=${token}&key=${key}`);
var postData = {
"msg": msg,
"cmd": cmd,
"timestamp": timestamp,
"token": token,
"sign": md5Str
}
this.$http.post(apiurl, postData, {
responseType: 'arraybuffer'
}).then((res) => {
let blob = new Blob([res.data], {
type: "application/vnd.ms-excel"
})
let url = URL.createObjectURL(blob);
let link = document.createElement('a');
link.href = url;
link.setAttribute("download", fileName);
document.body.appendChild(link);
link.click();
successCall(res);
}).catch(function (res) {});
},
Vue.prototype.getCookieItem = function () {
return JSON.parse(this.getCookie("userInfo"))
},
Vue.prototype.getLocalStorage = function () {
var localStorageData = window.localStorage["userInfo"];
if (localStorageData !== undefined && localStorageData!='undefined') {
return JSON.parse(localStorageData);
} else {
return null;
}
},
Vue.prototype.getCookie = function (cookieName) {
var strCookie = document.cookie;
var arrCookie = strCookie.split("; ");
for (var i = 0; i < arrCookie.length; i++) {
var arr = arrCookie[i].split("=");
if (cookieName == arr[0]) {
return arr[1];
}
}
return "";
},
Vue.prototype.getLoginUser = function () {
return this.loginUser
},
Vue.prototype.setLoginUser = function (user) {
this.loginUser = user
}
//PDF预览
Vue.prototype.previewPDF = function (url) {
window.open(this.domainManager().PDFViewUrl + url);
},
Vue.prototype.downloadFile = function (objectKey) {
var co = require('co');
var OSS = require('ali-oss');
var oss = new OSS({
region: 'oss-cn-hangzhou',
accessKeyId: 'LTAIwE7l9dImZSa3',
accessKeySecret: 'j47Ajn0d0WzUCIX8Biyj3P2r8QDltI',
bucket: 'reborndev'
})
let url = oss.signatureUrl(objectKey);
let link = document.createElement('a');
link.href = url;
document.body.appendChild(link);
link.click();
},
Vue.prototype.downloadFileRename = function (objectKey, filename, fileurl) {
var co = require('co');
var OSS = require('ali-oss');
var oss = new OSS({
region: 'oss-cn-hangzhou',
accessKeyId: 'LTAIwE7l9dImZSa3',
accessKeySecret: 'j47Ajn0d0WzUCIX8Biyj3P2r8QDltI',
bucket: 'reborndev'
})
let url = '';
if(fileurl)
url = fileurl
else
url = oss.signatureUrl(objectKey);
let getBlob = new Promise(resolve => {
const xhr = new XMLHttpRequest();
xhr.open('GET', url, true);
xhr.responseType = 'blob';
xhr.onload = () => {
if (xhr.status === 200) {
resolve(xhr.response);
}
};
xhr.send();
});
getBlob.then(blob => {
if (window.navigator.msSaveOrOpenBlob) {
navigator.msSaveBlob(blob, filename);
} else {
const link = document.createElement('a');
const body = document.querySelector('body');
link.href = window.URL.createObjectURL(blob);
link.download = filename;
link.style.display = 'none';
body.appendChild(link);
link.click();
body.removeChild(link);
window.URL.revokeObjectURL(link.href);
}
});
},
Vue.prototype.getFileBlob = function (objectKey, filename) {
var co = require('co');
var OSS = require('ali-oss');
var oss = new OSS({
region: 'oss-cn-hangzhou',
accessKeyId: 'LTAIwE7l9dImZSa3',
accessKeySecret: 'j47Ajn0d0WzUCIX8Biyj3P2r8QDltI',
bucket: 'reborndev'
})
let url = oss.signatureUrl(objectKey);
let getBlob = new Promise(resolve => {
const xhr = new XMLHttpRequest();
xhr.open('GET', url, true);
xhr.responseType = 'blob';
xhr.onload = () => {
if (xhr.status === 200) {
resolve(xhr.response);
}
};
xhr.send();
});
return getBlob
},
//path 请按照"/模块名称/用户ID/自定义文件夹/" /谁搞错一次5块红包
//files 文件数组
//p 进度回调函数
Vue.prototype.uploadFile = function (path, files, successCall) {
if (files && files.length > 0) {
let nameList = new Array()
for (let index = 0; index < files.length; index++) {
nameList.push(this.random_string());
}
var oss = new OSS({
region: 'oss-cn-hangzhou',
accessKeyId: 'LTAIwE7l9dImZSa3',
accessKeySecret: 'j47Ajn0d0WzUCIX8Biyj3P2r8QDltI',
bucket: 'reborndev'
})
let that = this
co(function* () {
for (let index = 0; index < files.length; index++) {
let fileName = nameList[index]
fileName = path + fileName + "." + files[index].name.split('.').pop()
var result = yield oss.multipartUpload(fileName, files[index], {
progress: function* (p) {},
mime: 'application/octet-stream'
})
successCall(result);
}
}).catch(function (err) {
console.log(err);
});
}
},
Vue.prototype.uploadBlob = function (path, files, successCall) {
if (files && files.length > 0) {
var oss = new OSS({
region: 'oss-cn-hangzhou',
accessKeyId: 'LTAIwE7l9dImZSa3',
accessKeySecret: 'j47Ajn0d0WzUCIX8Biyj3P2r8QDltI',
bucket: 'reborndev'
})
let that = this
co(function* () {
for (let index = 0; index < files.length; index++) {
var result = yield oss.multipartUpload(path, files[index], {
progress: function* (p) {},
mime: 'application/octet-stream'
})
successCall(result);
}
}).catch(function (err) {
console.log(err);
});
}
},
//验证只能输入2位小数【负数:isMinus传true】
Vue.prototype.checkPrice = function (item, filed, isMinus) {
var value = "" + item[filed]; //转字符串
var t = value.charAt(0);
value = value.replace(/[^\d.]/g, ""); //清除“数字”和“.”以外的字符
value = value.replace(/\.{2,}/g, "."); //只保留第一个. 清除多余的
value = value
.replace(".", "$#$")
.replace(/\./g, "")
.replace("$#$", ".");
value = value.replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3'); //只能输入两个小数
//如果第一位是负号,则允许添加 如果不允许添加负号 可以把这块注释掉
//是否允许负数
if (isMinus && t == '-') {
value = '-' + value;
}
item[filed] = value;
}
//验证输入6位小数汇率
Vue.prototype.checkRate = function (item, filed) {
var value = "" + item[filed]; //转字符串
var p1 = /[^\d\.]/g; // 过滤非数字及小数点 /g :所有范围中过滤
var p2 = /(\.\d{6})\d*$/g;
var p4 = /(\.)(\d*)\1/g;
value = value.replace(p1, "").replace(p2, "$1").replace(p4, "$1$2");
value = value.replace(/[^0-9.]/g, '');
var p5 = /\.+/g; //多个点的话只取1个点,屏蔽1....234的情况
value = value.replace(p5, ".")
var p6 = /(\.+)(\d+)(\.+)/g; //屏蔽1....234.的情况
value = value.replace(p6, "$1$2") // 屏蔽最后一位的.
item[filed] = value;
}
var groupmap = new Map();
source.forEach(item => {
if (groupmap.has(item[orders[0]])) {
groupmap.get(item[orders[0]]).push(item);
} else {
groupmap.set(item[orders[0]], []);
groupmap.get(item[orders[0]]).push(item);
}
});
//验证只能输入整数【负数:isMinus传true】
Vue.prototype.checkInteger = function (item, filed, isMinus) {
var value = "" + item[filed]; //转字符串
var t = value.charAt(0);
value = value.replace(this.$commonUtils.Regex.isInteger, "");
//是否允许负数
if (isMinus && t == '-') {
value = '-' + value;
}
item[filed] = value;
}
orders.shift();
//价钱格式化,三位数逗号分隔,保留两位小数 duanjun
Vue.prototype.moneyFormat = function (value) {
let nStr = Number(value).toFixed(2)
nStr += '';
let x = nStr.split('.');
let x1 = x[0];
let x2 = x.length > 1 ? '.' + x[1] : '';
var rgx = /(\d+)(\d{3})/;
while (rgx.test(x1)) {
x1 = x1.replace(rgx, '$1' + ',' + '$2');
}
return x1 + x2;
},
for (let [key, val] of groupmap) {
totalSum[key] = {};
totalSum[key].name = key;
totalSum[key].value = val.length;
if (orders.length == 0) {
results = results.concat(val);
} else {
totalSum[key].children = {};
var orderscopy = orders.concat([]);
grouporder(val, orderscopy, totalSum[key].children);
}
}
}
Vue.prototype.loadFileICON = function (suffix) {
let icons = [{
"name": "\u7f51\u76d8BT\u79bb\u7ebf\u4e0b\u8f7d",
grouporder(source, ordersc, totalSum);
"filesType": "*.bt,*.torrent",
"filesIcon": {
"bt": ["fileicon-small-bt", "fileicon-large-bt", "fileicon-middle-bt"],
"torrent": ["fileicon-small-bt", "fileicon-large-bt", "fileicon-middle-bt"]
return {
results: results,
totalSum: totalSum
};
} else {
return source;
}
},
"entranceFile": "file-widget-1:bt\/start.js"
},
{
"name": "\u6d69\u8fb0CAD",
"group": "com.gstarcad.web",
"notSupport": "ie6",
"filesIcon": {
"dws": ["fileicon-small-dws", "fileicon-large-dws", "fileicon-middle-dws"],
"dwt": ["fileicon-small-dws", "fileicon-large-dws", "fileicon-middle-dws"],
"dxf": ["fileicon-small-dws", "fileicon-large-dws", "fileicon-middle-dws"],
"dwg": ["fileicon-small-dws", "fileicon-large-dws", "fileicon-middle-dws"],
"cad": ["fileicon-small-dws", "fileicon-large-dws", "fileicon-middle-dws"]
Vue.prototype.calcPageSize = function(itemHeight) {
let yuHeight = itemHeight
try {
let obj = null
document.querySelectorAll('.frame-box').forEach(x => {
if (x.style.display != 'none') {
obj = x
}
})
let dom = obj.offsetHeight
yuHeight = dom - (obj.querySelector('.v-table-header') ? obj.querySelector('.v-table-header').offsetHeight : 39) - 50 //减去面包屑,减去表格头部,减去分页,减去偏量
//减去其它同级元素
obj.childNodes[0].childNodes.forEach(x => {
if (x.className && x.className.indexOf('v-table-views') == -1) {
yuHeight -= x.offsetHeight ? x.offsetHeight : 0
}
})
} catch (error) { console.log(error) }
return Math.floor(yuHeight / itemHeight)
}
Vue.prototype.random_string = function(len) {
len = len || 32;
var chars = 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678';
var maxPos = chars.length;
var pwd = '';
for (let i = 0; i < len; i++) {
pwd += chars.charAt(Math.floor(Math.random() * maxPos));
}
return pwd;
},
"entranceFile": "file-widget-1:cad\/start.js"
},
{
"name": "\u7f51\u76d8\u4ee3\u7801\u9605\u8bfb\u5668",
"notSupport": "ie",
"filesType": "*.txt,*.as,*.sh,*.c,*.cpp,*.h,*.cs,*.asp,*.css,*.pas,*.diff,*.patch,*.erl,*.groovy,*.java,*.jsp,*.js,*.json,*.pl,*.php,*.py,*.rb,*.sass,*.scss,*.scala,*.sql,*.vb,*.xml,*.xhtml,*.html,*.htm,*.md,*.less,*.lua,*.go,*.bat,*.wml",
"filesIcon": {
"as": ["fileicon-small-code", "fileicon-large-code"],
"sh": ["fileicon-small-code", "fileicon-large-code"],
"c": ["fileicon-small-code", "fileicon-large-code"],
"cpp": ["fileicon-small-code", "fileicon-large-code"],
"h": ["fileicon-small-code", "fileicon-large-code"],
"cs": ["fileicon-small-code", "fileicon-large-code"],
"asp": ["fileicon-small-code", "fileicon-large-code"],
"css": ["fileicon-small-code", "fileicon-large-code"],
"pas": ["fileicon-small-code", "fileicon-large-code"],
"diff": ["fileicon-small-code", "fileicon-large-code"],
"patch": ["fileicon-small-code", "fileicon-large-code"],
"erl": ["fileicon-small-code", "fileicon-large-code"],
"groovy": ["fileicon-small-code", "fileicon-large-code"],
"java": ["fileicon-small-code", "fileicon-large-code"],
"jsp": ["fileicon-small-code", "fileicon-large-code"],
"js": ["fileicon-small-code", "fileicon-large-code"],
"json": ["fileicon-small-code", "fileicon-large-code"],
"pl": ["fileicon-small-code", "fileicon-large-code"],
"php": ["fileicon-small-code", "fileicon-large-code"],
"py": ["fileicon-small-code", "fileicon-large-code"],
"rb": ["fileicon-small-code", "fileicon-large-code"],
"sass": ["fileicon-small-code", "fileicon-large-code"],
"scss": ["fileicon-small-code", "fileicon-large-code"],
"scala": ["fileicon-small-code", "fileicon-large-code"],
"sql": ["fileicon-small-code", "fileicon-large-code"],
"vb": ["fileicon-small-code", "fileicon-large-code"],
"xml": ["fileicon-small-code", "fileicon-large-code"],
"xhtml": ["fileicon-small-code", "fileicon-large-code"],
"html": ["fileicon-small-code", "fileicon-large-code"],
"htm": ["fileicon-small-code", "fileicon-large-code"],
"md": ["fileicon-small-code", "fileicon-large-code"],
"less": ["fileicon-small-code", "fileicon-large-code"],
"lua": ["fileicon-small-code", "fileicon-large-code"],
"go": ["fileicon-small-code", "fileicon-large-code"],
"bat": ["fileicon-small-code", "fileicon-large-code"],
"wml": ["fileicon-small-code", "fileicon-large-code"]
//是否是线上环境【发布时修改为true】
Vue.prototype.isOnline = function() {
return process.env.NODE_ENV !== 'development';
},
"entranceFile": "file-widget-1:codeReader\/start.js"
},
{
"name": "\u7f51\u76d8\u89e3\u538b\u7f29",
"filesType": "*.rar,*.zip",
"notSupport": "ie6",
"filesIcon": {
"rar": ["fileicon-small-zip", "fileicon-large-zip", "fileicon-middle-zip"],
"zip": ["fileicon-small-zip", "fileicon-large-zip", "fileicon-middle-zip"]
//域名管理对象
Vue.prototype.domainManager = function() {
let domainUrl = '';
let locationName = window.location.hostname;
// domainUrl = "http://127.0.0.1"; //214主域名
// 127.0.0.12
// domainUrl = "http://192.168.2.88"; //王悦主域名
// domainUrl = "http://127.0.0.1"; //214主域名
// domainUrl = "http://192.168.2.16:8083"; //王悦主域名
// domainUrl = "http://127.0.0.1"; //214主域名
domainUrl = "http://192.168.2.65:8025"; //吴春主域名
// domainUrl = "http://192.168.2.106:8082"; //罗超主域名
if (locationName.indexOf('oytour') !== -1) {
domainUrl = "https://reborn.oytour.com";
} else if (locationName.indexOf('viitto') !== -1) {
domainUrl = "https://test.viitto.com";
}
var obj = {
//主地址
DomainUrl: domainUrl,
//常用提交数据URL
PostUrl: domainUrl + "/api/common/post",
//上传文件URL
UploadFileUrl: domainUrl + '/api/File/post',
//本站模板文件下载地址
LocalTemplateFileDownLoadUrl: domainUrl,
//阿里服务器地址
AliUrl: "https://reborndev.oss-cn-hangzhou.aliyuncs.com",
//本站文件流下载地址
LocalFileStreamDownLoadUrl: domainUrl + "/api/file/GetFileFromWebApi",
//PDF文件预览地址
PDFViewUrl: domainUrl + "/plug/pdf/web/viewer.html?file=",
//SocketUrl
WebSocketUrl: "ws://192.168.1.110:8080?account=",
//google地图Url
GoogleMapUrl: "http://ditu.google.cn/maps/api/js?key=AIzaSyAZ5MIfzicStzKbIkbI3RcBBeZBjQFKsp0&sensor=false&language=zh-CN",
//google地图图片地址
GoogleMapImageUrl: "http://super.oytour.com",
// "http://upload.oytour.com"
UploadUrl: locationName.indexOf('oytour') !== -1 ? "http://upload.oytour.com" : "http://127.0.0.1:8120"
// UploadUrl: "http://upload.oytour.com"
};
return obj;
},
"depsFiles": ["file-widget-1:zip\/util\/css\/fileUnzip.css", "file-widget-1:zip\/util\/css\/list-view.css"],
"entranceFile": "file-widget-1:zip\/start.js"
},
{
"name": "\u7f51\u76d8\u6587\u6863\u9605\u8bfb\u5668",
"filesType": "*.txt,*.pdf,*.doc,*.docx,*.ppt,*.pptx,*.xls,*.xlsx,*.rtf",
"filesIcon": {
"txt": ["fileicon-small-txt", "fileicon-large-txt", "fileicon-middle-txt"],
"rtf": ["fileicon-small-txt", "fileicon-large-txt", "fileicon-middle-txt"],
"pdf": ["fileicon-small-pdf", "fileicon-large-pdf", "fileicon-middle-pdf"],
"doc": ["fileicon-small-doc", "fileicon-large-doc", "fileicon-middle-doc"],
"docx": ["fileicon-small-doc", "fileicon-large-doc", "fileicon-middle-doc"],
"ppt": ["fileicon-small-ppt", "fileicon-large-ppt", "fileicon-middle-ppt"],
"pptx": ["fileicon-small-ppt", "fileicon-large-ppt", "fileicon-middle-ppt"],
"xls": ["fileicon-small-xls", "fileicon-large-xls", "fileicon-middle-xls"],
"xlsx": ["fileicon-small-xls", "fileicon-large-xls", "fileicon-middle-xls"],
"vsd": ["fileicon-small-vsd", "fileicon-large-vsd", "fileicon-middle-vsd"]
Vue.prototype.yinyanFn = function(url, successCall, faildCall) {
this.$http.jsonp(url, )
.then(res => {
successCall(res)
}, faildCall)
},
"depsFiles": ["file-widget-1:doc\/util\/docReader.css", "file-widget-1:doc\/pdfJsReader\/pdfJsReader.less", "base:thirdParty\/pdfjs\/_nomd5_nomod\/web\/trans-viewer.less", "base:thirdParty\/pdfjs\/_nomd5_nomod\/web\/viewer.less"],
"entranceFile": "file-widget-1:doc\/start.js"
},
{
"name": "\u7f51\u76d8\u56fe\u7247\u9884\u89c8",
"filesType": "*.jpg,*.jpeg,*.livp,*.gif,*bmp,*.png,*jpe,*.cur,*.svgz,*.ico,*.heic,*.heif,*.avci,*.webp",
"filesIcon": {
"jpg": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"jpeg": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"livp": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"gif": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"bmp": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"png": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"jpe": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"cur": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"svgz": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"tif": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"tiff": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"ico": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"heic": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"heif": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"avci": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"]
//消息成功提示
Vue.prototype.Success = function(msg) {
this.$message({
message: msg,
duration: 2000,
type: "success"
});
},
"depsFiles": ["file-widget-1:image\/util\/picCategory-dialog\/css\/picCategory-dialog.css", "file-widget-1:image\/util\/picPreview\/css\/picPreview.css", "file-widget-1:image\/util\/picPreviewAside\/css\/picPreviewAside.css", "file-widget-1:image\/util\/showPic\/css\/showPic.css", "file-widget-1:image\/util\/thumbnailPic\/css\/thumbnailPic.css", "base:thirdParty\/videojs\/_nomd5_nomod\/video-js.css"],
"entranceFile": "file-widget-1:image\/start.js"
},
{
"name": "\u767e\u5ea6\u8111\u56fe",
"group": "com.baidu.naotu",
"filesType": "*.mmap,*.xmind,*.mm",
"notSupport": "ie6",
"filesIcon": {
"mmap": ["fileicon-small-mmap", "fileicon-large-mmap", "fileicon-middle-mmap"],
"xmind": ["fileicon-small-xmind", "fileicon-large-xmind", "fileicon-middle-xmind"],
"mm": ["fileicon-small-mm", "fileicon-large-mm", "fileicon-middle-mm"]
//错误提示
Vue.prototype.Error = function(msg) {
this.$message({
message: msg,
duration: 2000,
type: "error"
});
},
//一般提示
Vue.prototype.Info = function(msg) {
this.$message({
message: msg,
duration: 2000,
type: "info"
});
},
"entranceFile": "file-widget-1:mindmap\/start.js"
},
{
"name": "\u7f51\u76d8\u97f3\u9891\u64ad\u653e\u5668",
"notSupport": "ie6",
"filesType": "*.wma,*.wav,*.mp3,*.aac,*.ra,*.ram,*.mp2,*.ogg,*.aif,*.mpega,*.amr,*.mid,*.midi,*.m4a",
"filesIcon": {
"wma": ["fileicon-small-mp3", "fileicon-large-mp3", "fileicon-middle-mp3"],
"wav": ["fileicon-small-mp3", "fileicon-large-mp3", "fileicon-middle-mp3"],
"mp3": ["fileicon-small-mp3", "fileicon-large-mp3", "fileicon-middle-mp3"],
"aac": ["fileicon-small-mp3", "fileicon-large-mp3", "fileicon-middle-mp3"],
"ra": ["fileicon-small-mp3", "fileicon-large-mp3", "fileicon-middle-mp3"],
"ram": ["fileicon-small-mp3", "fileicon-large-mp3", "fileicon-middle-mp3"],
"mp2": ["fileicon-small-mp3", "fileicon-large-mp3", "fileicon-middle-mp3"],
"ogg": ["fileicon-small-mp3", "fileicon-large-mp3", "fileicon-middle-mp3"],
"aif": ["fileicon-small-mp3", "fileicon-large-mp3", "fileicon-middle-mp3"],
"mpega": ["fileicon-small-mp3", "fileicon-large-mp3", "fileicon-middle-mp3"],
"amr": ["fileicon-small-mp3", "fileicon-large-mp3", "fileicon-middle-mp3"],
"mid": ["fileicon-small-mp3", "fileicon-large-mp3", "fileicon-middle-mp3"],
"midi": ["fileicon-small-mp3", "fileicon-large-mp3", "fileicon-middle-mp3"],
"m4a": ["fileicon-small-mp3", "fileicon-large-mp3", "fileicon-middle-mp3"]
//警告提示
Vue.prototype.Warning = function(msg) {
this.$message({
message: msg,
duration: 2000,
type: "warning"
});
},
"buttons": [{
"title": "\u97f3\u4e50\u64ad\u653e",
"name": "play-music",
"position": "listTools",
"index": 2,
"disabled": "none",
"icon": "icon-play",
"buttonStyle": "normal",
"conditions": {
"pageModule": "list,share,search,category,searchGlobal",
"filesType": "wma,wav,mp3,aac,ra,ram,mp2,ogg,aif,mpega,amr,mid,midi,m4a",
"filesTypeStrongMatch": true
}
}],
"depsFiles": ["file-widget-1:musicPlay\/util\/mbox\/musicbox.css"],
"entranceFile": "file-widget-1:musicPlay\/start.js"
},
{
"name": "\u7f51\u76d8\u5927\u56fe\u9884\u89c8",
"filesType": "*.jpg,*.jpeg,*.gif,*bmp,*.png,*jpe,*.cur,*.svgz,*.ico",
"filesIcon": {
"jpg": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"jpeg": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"gif": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"bmp": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"png": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"jpe": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"cur": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"svgz": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"tif": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"tiff": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"ico": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"]
//Confirm
Vue.prototype.Confirm = function(msg, callback) {
this.$confirm(msg, "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
})
.then(() => {
if (typeof callback === 'function') {
callback();
}
})
.catch(() => {
this.Info("已取消操作");
});
},
"depsFiles": ["file-widget-1:preview\/picPreview.css"],
"entranceFile": "file-widget-1:preview\/start.js"
},
{
"name": "sysIcon",
"filesType": "*.exe,*.msi,*.dmg,*.pkg,*.psd,*.apk,*.key,*.ai,*.ipa",
"filesIcon": {
"exe": ["fileicon-sys-s-exe", "fileicon-sys-l-exe"],
"msi": ["fileicon-sys-s-exe", "fileicon-sys-l-exe"],
"dmg": ["fileicon-sys-s-exe", "fileicon-sys-l-dmg"],
"pkg": ["fileicon-sys-s-exe", "fileicon-sys-l-dmg"],
"psd": ["fileicon-sys-s-psd", "fileicon-sys-l-psd"],
"apk": ["fileicon-sys-s-apk", "fileicon-sys-l-apk"],
"key": ["fileicon-sys-s-key", "fileicon-sys-l-key"],
"ai": ["fileicon-sys-s-ai", "fileicon-sys-l-ai"],
"ipa": ["fileicon-sys-s-ipa", "fileicon-sys-l-ipa"],
"pages": ["fileicon-sys-s-pages", "fileicon-sys-l-pages"],
"numbers": ["fileicon-sys-s-numbers", "fileicon-sys-l-numbers"],
"eot": ["fileicon-sys-s-fonts", "fileicon-sys-l-fonts"],
"ttf": ["fileicon-sys-s-fonts", "fileicon-sys-l-fonts"],
"woff": ["fileicon-sys-s-fonts", "fileicon-sys-l-fonts"],
"eps": ["fileicon-sys-s-eps", "fileicon-sys-l-eps"],
"lnk": ["fileicon-sys-s-links", "fileicon-sys-l-links"],
"link": ["fileicon-sys-s-links", "fileicon-sys-l-links"],
"swf": ["fileicon-sys-s-swf", "fileicon-sys-l-swf"],
"php": ["fileicon-sys-s-code", "fileicon-sys-l-code"],
"c": ["fileicon-sys-s-code", "fileicon-sys-l-code"],
"js": ["fileicon-sys-s-code", "fileicon-sys-l-code"],
"css": ["fileicon-sys-s-code", "fileicon-sys-l-code"],
"html": ["fileicon-sys-s-web", "fileicon-sys-l-web"],
"htm": ["fileicon-sys-s-web", "fileicon-sys-l-web"],
"xhtml": ["fileicon-sys-s-web", "fileicon-sys-l-web"],
"java": ["fileicon-sys-s-code", "fileicon-sys-l-code"],
"cc": ["fileicon-sys-s-code", "fileicon-sys-l-code"],
"python": ["fileicon-sys-s-code", "fileicon-sys-l-code"],
"json": ["fileicon-sys-s-code", "fileicon-sys-l-code"],
"sh": ["fileicon-sys-s-code", "fileicon-sys-l-code"],
"bat": ["fileicon-sys-s-code", "fileicon-sys-l-code"],
"ejs": ["fileicon-sys-s-code", "fileicon-sys-l-code"],
"xml": ["fileicon-sys-s-code", "fileicon-sys-l-code"],
"ts": ["fileicon-sys-s-video", "fileicon-sys-l-video"]
//打开新窗口连接
Vue.prototype.OpenNewUrl = function(URL) {
if (URL != '') {
window.open('http://' + URL, '_blank');
}
}
Vue.prototype.uploadImg = function(tcID, msg, successCall, faildCall) {
var apiurl = this.domainManager().Upload + '/Upload/UploadBase64?fileType=1&fileLimit=5&&filePath=Freature/TCID' + tcID;
this.$http.post(apiurl, msg, {
datatype: "jsonP",
}).then(res => {
successCall(res);
}, faildCall)
}
},
{
"name": "\u7f51\u76d8\u89c6\u9891",
"filesType": "*.wmv,*.rmvb,*.mpeg4,*.mpeg2,*.flv,*.avi,*.3gp,*.mpga,*.qt,*.rm,*.wmz,*.wmd,*.wvx,*.wmx,*.wm,*.mpg,*.mp4,*.mkv,*.mpeg,*mov,*.asf,*.m4v,*.m3u8",
"filesIcon": {
"wmv": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"rmvb": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"mpeg4": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"mpeg2": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"flv": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"avi": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"3gp": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"mpga": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"qt": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"rm": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"wmz": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"wmd": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"wvx": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"wmx": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"wm": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"mpg": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"mp4": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"mkv": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"mpeg": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"mov": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"asf": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"m4v": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"m3u8": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"]
//HTTP提交数据
Vue.prototype.apipost = function(cmd, msg, successCall, faildCall) {
if (msg == null || msg == "") {
msg = {}
}
var apiurl = this.domainManager().PostUrl;
var timestamp = (new Date()).valueOf();
this.apiurl = apiurl;
if (this.$route.path.toLowerCase() == "/signature") {
this.$router.push({
path: '/signature'
})
} else {
if (!localStorage.userInfo && localStorage.userInfo != "" && this.$route.path.toLowerCase() != "/login") {
this.$router.push({
path: '/login'
})
}
}
var token = "";
var key = "";
if (this.getLocalStorage() != null) {
token = this.getLocalStorage().token;
key = this.getLocalStorage().SecretKey;
}
var encodeMsg = encodeURIComponent(JSON.stringify(msg)).toLowerCase();
var md5Str = md5(`cmd=${cmd}&msg=${encodeMsg}&timestamp=${timestamp}&token=${token}&key=${key}`);
var postData = {
"msg": msg,
"cmd": cmd,
"timestamp": timestamp,
"token": token,
"sign": md5Str
}
this.$http.post(apiurl, postData, {
headers: {
'Content-Type': 'application/json',
'Referer-Viitto': this.$route.path
}
})
.then(res => {
if (res.data.resultCode == 10000 || res.data.resultCode == 10001) {
this.$router.push({
path: '/login'
});
} else if (res.resultCode == 10005) {
this.$router.go(-1);
} else {
successCall(res);
}
}, faildCall)
},
//下载文件
Vue.prototype.GetLocalFile = function(cmd, msg, fileName, successCall) {
var apiurl = this.domainManager().LocalFileStreamDownLoadUrl;
var timestamp = (new Date()).valueOf();
if (!localStorage.userInfo && localStorage.userInfo != "" && this.$route.path.toLowerCase() != "/login") {
this.$router.push({
path: '/login'
})
}
var token = "";
var key = "";
if (this.getLocalStorage() != null) {
token = this.getLocalStorage().token;
key = this.getLocalStorage().SecretKey;
}
var encodeMsg = encodeURIComponent(JSON.stringify(msg)).toLowerCase();
var md5Str = md5(`cmd=${cmd}&msg=${encodeMsg}&timestamp=${timestamp}&token=${token}&key=${key}`);
var postData = {
"msg": msg,
"cmd": cmd,
"timestamp": timestamp,
"token": token,
"sign": md5Str
}
this.$http.post(apiurl, postData, {
responseType: 'arraybuffer'
}).then((res) => {
let blob = new Blob([res.data], {
type: "application/vnd.ms-excel"
})
let url = URL.createObjectURL(blob);
let link = document.createElement('a');
link.href = url;
link.setAttribute("download", fileName);
document.body.appendChild(link);
link.click();
successCall(res);
}).catch(function(res) {});
},
"preload": true,
"entranceFile": "file-widget-1:video\/start.js"
}
]
if (suffix == "")
return "dir-small"
let css = ""
icons.forEach(x => {
//console.log(x.filesIcon.hasOwnProperty(suffix))
if (x.filesIcon.hasOwnProperty(suffix)) {
css = x.filesIcon[suffix][0]
return false
}
})
if (css == '') {
css = 'default-small'
Vue.prototype.getCookieItem = function() {
return JSON.parse(this.getCookie("userInfo"))
},
Vue.prototype.getLocalStorage = function() {
var localStorageData = window.localStorage["userInfo"];
if (localStorageData !== undefined && localStorageData != 'undefined') {
return JSON.parse(localStorageData);
} else {
return null;
}
},
Vue.prototype.getCookie = function(cookieName) {
var strCookie = document.cookie;
var arrCookie = strCookie.split("; ");
for (var i = 0; i < arrCookie.length; i++) {
var arr = arrCookie[i].split("=");
if (cookieName == arr[0]) {
return arr[1];
}
}
return "";
},
Vue.prototype.getLoginUser = function() {
return this.loginUser
},
Vue.prototype.setLoginUser = function(user) {
this.loginUser = user
}
//PDF预览
Vue.prototype.previewPDF = function(url) {
window.open(this.domainManager().PDFViewUrl + url);
},
Vue.prototype.downloadFile = function(objectKey) {
var co = require('co');
var OSS = require('ali-oss');
var oss = new OSS({
region: 'oss-cn-hangzhou',
accessKeyId: 'LTAIwE7l9dImZSa3',
accessKeySecret: 'j47Ajn0d0WzUCIX8Biyj3P2r8QDltI',
bucket: 'reborndev'
})
let url = oss.signatureUrl(objectKey);
let link = document.createElement('a');
link.href = url;
document.body.appendChild(link);
link.click();
},
Vue.prototype.downloadFileRename = function(objectKey, filename, fileurl) {
var co = require('co');
var OSS = require('ali-oss');
var oss = new OSS({
region: 'oss-cn-hangzhou',
accessKeyId: 'LTAIwE7l9dImZSa3',
accessKeySecret: 'j47Ajn0d0WzUCIX8Biyj3P2r8QDltI',
bucket: 'reborndev'
})
let url = '';
if (fileurl)
url = fileurl
else
url = oss.signatureUrl(objectKey);
let getBlob = new Promise(resolve => {
const xhr = new XMLHttpRequest();
xhr.open('GET', url, true);
xhr.responseType = 'blob';
xhr.onload = () => {
if (xhr.status === 200) {
resolve(xhr.response);
}
};
xhr.send();
});
getBlob.then(blob => {
if (window.navigator.msSaveOrOpenBlob) {
navigator.msSaveBlob(blob, filename);
} else {
const link = document.createElement('a');
const body = document.querySelector('body');
link.href = window.URL.createObjectURL(blob);
link.download = filename;
link.style.display = 'none';
body.appendChild(link);
link.click();
body.removeChild(link);
window.URL.revokeObjectURL(link.href);
}
});
},
Vue.prototype.getFileBlob = function(objectKey, filename) {
var co = require('co');
var OSS = require('ali-oss');
var oss = new OSS({
region: 'oss-cn-hangzhou',
accessKeyId: 'LTAIwE7l9dImZSa3',
accessKeySecret: 'j47Ajn0d0WzUCIX8Biyj3P2r8QDltI',
bucket: 'reborndev'
})
let url = oss.signatureUrl(objectKey);
let getBlob = new Promise(resolve => {
const xhr = new XMLHttpRequest();
xhr.open('GET', url, true);
xhr.responseType = 'blob';
xhr.onload = () => {
if (xhr.status === 200) {
resolve(xhr.response);
}
};
xhr.send();
});
return getBlob
},
//path 请按照"/模块名称/用户ID/自定义文件夹/" /谁搞错一次5块红包
//files 文件数组
//p 进度回调函数
Vue.prototype.uploadFile = function(path, files, successCall) {
if (files && files.length > 0) {
let nameList = new Array()
for (let index = 0; index < files.length; index++) {
nameList.push(this.random_string());
}
var oss = new OSS({
region: 'oss-cn-hangzhou',
accessKeyId: 'LTAIwE7l9dImZSa3',
accessKeySecret: 'j47Ajn0d0WzUCIX8Biyj3P2r8QDltI',
bucket: 'reborndev'
})
let that = this
co(function*() {
for (let index = 0; index < files.length; index++) {
let fileName = nameList[index]
fileName = path + fileName + "." + files[index].name.split('.').pop()
var result = yield oss.multipartUpload(fileName, files[index], {
progress: function*(p) {},
mime: 'application/octet-stream'
})
successCall(result);
}
}).catch(function(err) {
console.log(err);
});
}
},
Vue.prototype.uploadBlob = function(path, files, successCall) {
if (files && files.length > 0) {
var oss = new OSS({
region: 'oss-cn-hangzhou',
accessKeyId: 'LTAIwE7l9dImZSa3',
accessKeySecret: 'j47Ajn0d0WzUCIX8Biyj3P2r8QDltI',
bucket: 'reborndev'
})
let that = this
co(function*() {
for (let index = 0; index < files.length; index++) {
var result = yield oss.multipartUpload(path, files[index], {
progress: function*(p) {},
mime: 'application/octet-stream'
})
successCall(result);
}
}).catch(function(err) {
console.log(err);
});
}
},
//验证只能输入2位小数【负数:isMinus传true】
Vue.prototype.checkPrice = function(item, filed, isMinus) {
var value = "" + item[filed]; //转字符串
var t = value.charAt(0);
value = value.replace(/[^\d.]/g, ""); //清除“数字”和“.”以外的字符
value = value.replace(/\.{2,}/g, "."); //只保留第一个. 清除多余的
value = value
.replace(".", "$#$")
.replace(/\./g, "")
.replace("$#$", ".");
value = value.replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3'); //只能输入两个小数
//如果第一位是负号,则允许添加 如果不允许添加负号 可以把这块注释掉
//是否允许负数
if (isMinus && t == '-') {
value = '-' + value;
}
item[filed] = value;
}
//验证输入6位小数汇率
Vue.prototype.checkRate = function(item, filed) {
var value = "" + item[filed]; //转字符串
var p1 = /[^\d\.]/g; // 过滤非数字及小数点 /g :所有范围中过滤
var p2 = /(\.\d{6})\d*$/g;
var p4 = /(\.)(\d*)\1/g;
value = value.replace(p1, "").replace(p2, "$1").replace(p4, "$1$2");
value = value.replace(/[^0-9.]/g, '');
var p5 = /\.+/g; //多个点的话只取1个点,屏蔽1....234的情况
value = value.replace(p5, ".")
var p6 = /(\.+)(\d+)(\.+)/g; //屏蔽1....234.的情况
value = value.replace(p6, "$1$2") // 屏蔽最后一位的.
item[filed] = value;
}
//验证只能输入整数【负数:isMinus传true】
Vue.prototype.checkInteger = function(item, filed, isMinus) {
var value = "" + item[filed]; //转字符串
var t = value.charAt(0);
value = value.replace(this.$commonUtils.Regex.isInteger, "");
//是否允许负数
if (isMinus && t == '-') {
value = '-' + value;
}
item[filed] = value;
}
return css;
}
}
}
//价钱格式化,三位数逗号分隔,保留两位小数 duanjun
Vue.prototype.moneyFormat = function(value) {
let nStr = Number(value).toFixed(2)
nStr += '';
let x = nStr.split('.');
let x1 = x[0];
let x2 = x.length > 1 ? '.' + x[1] : '';
var rgx = /(\d+)(\d{3})/;
while (rgx.test(x1)) {
x1 = x1.replace(rgx, '$1' + ',' + '$2');
}
return x1 + x2;
},
Vue.prototype.loadFileICON = function(suffix) {
let icons = [{
"name": "\u7f51\u76d8BT\u79bb\u7ebf\u4e0b\u8f7d",
"filesType": "*.bt,*.torrent",
"filesIcon": {
"bt": ["fileicon-small-bt", "fileicon-large-bt", "fileicon-middle-bt"],
"torrent": ["fileicon-small-bt", "fileicon-large-bt", "fileicon-middle-bt"]
},
"entranceFile": "file-widget-1:bt\/start.js"
},
{
"name": "\u6d69\u8fb0CAD",
"group": "com.gstarcad.web",
"notSupport": "ie6",
"filesIcon": {
"dws": ["fileicon-small-dws", "fileicon-large-dws", "fileicon-middle-dws"],
"dwt": ["fileicon-small-dws", "fileicon-large-dws", "fileicon-middle-dws"],
"dxf": ["fileicon-small-dws", "fileicon-large-dws", "fileicon-middle-dws"],
"dwg": ["fileicon-small-dws", "fileicon-large-dws", "fileicon-middle-dws"],
"cad": ["fileicon-small-dws", "fileicon-large-dws", "fileicon-middle-dws"]
},
"entranceFile": "file-widget-1:cad\/start.js"
},
{
"name": "\u7f51\u76d8\u4ee3\u7801\u9605\u8bfb\u5668",
"notSupport": "ie",
"filesType": "*.txt,*.as,*.sh,*.c,*.cpp,*.h,*.cs,*.asp,*.css,*.pas,*.diff,*.patch,*.erl,*.groovy,*.java,*.jsp,*.js,*.json,*.pl,*.php,*.py,*.rb,*.sass,*.scss,*.scala,*.sql,*.vb,*.xml,*.xhtml,*.html,*.htm,*.md,*.less,*.lua,*.go,*.bat,*.wml",
"filesIcon": {
"as": ["fileicon-small-code", "fileicon-large-code"],
"sh": ["fileicon-small-code", "fileicon-large-code"],
"c": ["fileicon-small-code", "fileicon-large-code"],
"cpp": ["fileicon-small-code", "fileicon-large-code"],
"h": ["fileicon-small-code", "fileicon-large-code"],
"cs": ["fileicon-small-code", "fileicon-large-code"],
"asp": ["fileicon-small-code", "fileicon-large-code"],
"css": ["fileicon-small-code", "fileicon-large-code"],
"pas": ["fileicon-small-code", "fileicon-large-code"],
"diff": ["fileicon-small-code", "fileicon-large-code"],
"patch": ["fileicon-small-code", "fileicon-large-code"],
"erl": ["fileicon-small-code", "fileicon-large-code"],
"groovy": ["fileicon-small-code", "fileicon-large-code"],
"java": ["fileicon-small-code", "fileicon-large-code"],
"jsp": ["fileicon-small-code", "fileicon-large-code"],
"js": ["fileicon-small-code", "fileicon-large-code"],
"json": ["fileicon-small-code", "fileicon-large-code"],
"pl": ["fileicon-small-code", "fileicon-large-code"],
"php": ["fileicon-small-code", "fileicon-large-code"],
"py": ["fileicon-small-code", "fileicon-large-code"],
"rb": ["fileicon-small-code", "fileicon-large-code"],
"sass": ["fileicon-small-code", "fileicon-large-code"],
"scss": ["fileicon-small-code", "fileicon-large-code"],
"scala": ["fileicon-small-code", "fileicon-large-code"],
"sql": ["fileicon-small-code", "fileicon-large-code"],
"vb": ["fileicon-small-code", "fileicon-large-code"],
"xml": ["fileicon-small-code", "fileicon-large-code"],
"xhtml": ["fileicon-small-code", "fileicon-large-code"],
"html": ["fileicon-small-code", "fileicon-large-code"],
"htm": ["fileicon-small-code", "fileicon-large-code"],
"md": ["fileicon-small-code", "fileicon-large-code"],
"less": ["fileicon-small-code", "fileicon-large-code"],
"lua": ["fileicon-small-code", "fileicon-large-code"],
"go": ["fileicon-small-code", "fileicon-large-code"],
"bat": ["fileicon-small-code", "fileicon-large-code"],
"wml": ["fileicon-small-code", "fileicon-large-code"]
},
"entranceFile": "file-widget-1:codeReader\/start.js"
},
{
"name": "\u7f51\u76d8\u89e3\u538b\u7f29",
"filesType": "*.rar,*.zip",
"notSupport": "ie6",
"filesIcon": {
"rar": ["fileicon-small-zip", "fileicon-large-zip", "fileicon-middle-zip"],
"zip": ["fileicon-small-zip", "fileicon-large-zip", "fileicon-middle-zip"]
},
"depsFiles": ["file-widget-1:zip\/util\/css\/fileUnzip.css", "file-widget-1:zip\/util\/css\/list-view.css"],
"entranceFile": "file-widget-1:zip\/start.js"
},
{
"name": "\u7f51\u76d8\u6587\u6863\u9605\u8bfb\u5668",
"filesType": "*.txt,*.pdf,*.doc,*.docx,*.ppt,*.pptx,*.xls,*.xlsx,*.rtf",
"filesIcon": {
"txt": ["fileicon-small-txt", "fileicon-large-txt", "fileicon-middle-txt"],
"rtf": ["fileicon-small-txt", "fileicon-large-txt", "fileicon-middle-txt"],
"pdf": ["fileicon-small-pdf", "fileicon-large-pdf", "fileicon-middle-pdf"],
"doc": ["fileicon-small-doc", "fileicon-large-doc", "fileicon-middle-doc"],
"docx": ["fileicon-small-doc", "fileicon-large-doc", "fileicon-middle-doc"],
"ppt": ["fileicon-small-ppt", "fileicon-large-ppt", "fileicon-middle-ppt"],
"pptx": ["fileicon-small-ppt", "fileicon-large-ppt", "fileicon-middle-ppt"],
"xls": ["fileicon-small-xls", "fileicon-large-xls", "fileicon-middle-xls"],
"xlsx": ["fileicon-small-xls", "fileicon-large-xls", "fileicon-middle-xls"],
"vsd": ["fileicon-small-vsd", "fileicon-large-vsd", "fileicon-middle-vsd"]
},
"depsFiles": ["file-widget-1:doc\/util\/docReader.css", "file-widget-1:doc\/pdfJsReader\/pdfJsReader.less", "base:thirdParty\/pdfjs\/_nomd5_nomod\/web\/trans-viewer.less", "base:thirdParty\/pdfjs\/_nomd5_nomod\/web\/viewer.less"],
"entranceFile": "file-widget-1:doc\/start.js"
},
{
"name": "\u7f51\u76d8\u56fe\u7247\u9884\u89c8",
"filesType": "*.jpg,*.jpeg,*.livp,*.gif,*bmp,*.png,*jpe,*.cur,*.svgz,*.ico,*.heic,*.heif,*.avci,*.webp",
"filesIcon": {
"jpg": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"jpeg": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"livp": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"gif": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"bmp": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"png": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"jpe": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"cur": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"svgz": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"tif": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"tiff": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"ico": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"heic": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"heif": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"avci": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"]
},
"depsFiles": ["file-widget-1:image\/util\/picCategory-dialog\/css\/picCategory-dialog.css", "file-widget-1:image\/util\/picPreview\/css\/picPreview.css", "file-widget-1:image\/util\/picPreviewAside\/css\/picPreviewAside.css", "file-widget-1:image\/util\/showPic\/css\/showPic.css", "file-widget-1:image\/util\/thumbnailPic\/css\/thumbnailPic.css", "base:thirdParty\/videojs\/_nomd5_nomod\/video-js.css"],
"entranceFile": "file-widget-1:image\/start.js"
},
{
"name": "\u767e\u5ea6\u8111\u56fe",
"group": "com.baidu.naotu",
"filesType": "*.mmap,*.xmind,*.mm",
"notSupport": "ie6",
"filesIcon": {
"mmap": ["fileicon-small-mmap", "fileicon-large-mmap", "fileicon-middle-mmap"],
"xmind": ["fileicon-small-xmind", "fileicon-large-xmind", "fileicon-middle-xmind"],
"mm": ["fileicon-small-mm", "fileicon-large-mm", "fileicon-middle-mm"]
},
"entranceFile": "file-widget-1:mindmap\/start.js"
},
{
"name": "\u7f51\u76d8\u97f3\u9891\u64ad\u653e\u5668",
"notSupport": "ie6",
"filesType": "*.wma,*.wav,*.mp3,*.aac,*.ra,*.ram,*.mp2,*.ogg,*.aif,*.mpega,*.amr,*.mid,*.midi,*.m4a",
"filesIcon": {
"wma": ["fileicon-small-mp3", "fileicon-large-mp3", "fileicon-middle-mp3"],
"wav": ["fileicon-small-mp3", "fileicon-large-mp3", "fileicon-middle-mp3"],
"mp3": ["fileicon-small-mp3", "fileicon-large-mp3", "fileicon-middle-mp3"],
"aac": ["fileicon-small-mp3", "fileicon-large-mp3", "fileicon-middle-mp3"],
"ra": ["fileicon-small-mp3", "fileicon-large-mp3", "fileicon-middle-mp3"],
"ram": ["fileicon-small-mp3", "fileicon-large-mp3", "fileicon-middle-mp3"],
"mp2": ["fileicon-small-mp3", "fileicon-large-mp3", "fileicon-middle-mp3"],
"ogg": ["fileicon-small-mp3", "fileicon-large-mp3", "fileicon-middle-mp3"],
"aif": ["fileicon-small-mp3", "fileicon-large-mp3", "fileicon-middle-mp3"],
"mpega": ["fileicon-small-mp3", "fileicon-large-mp3", "fileicon-middle-mp3"],
"amr": ["fileicon-small-mp3", "fileicon-large-mp3", "fileicon-middle-mp3"],
"mid": ["fileicon-small-mp3", "fileicon-large-mp3", "fileicon-middle-mp3"],
"midi": ["fileicon-small-mp3", "fileicon-large-mp3", "fileicon-middle-mp3"],
"m4a": ["fileicon-small-mp3", "fileicon-large-mp3", "fileicon-middle-mp3"]
},
"buttons": [{
"title": "\u97f3\u4e50\u64ad\u653e",
"name": "play-music",
"position": "listTools",
"index": 2,
"disabled": "none",
"icon": "icon-play",
"buttonStyle": "normal",
"conditions": {
"pageModule": "list,share,search,category,searchGlobal",
"filesType": "wma,wav,mp3,aac,ra,ram,mp2,ogg,aif,mpega,amr,mid,midi,m4a",
"filesTypeStrongMatch": true
}
}],
"depsFiles": ["file-widget-1:musicPlay\/util\/mbox\/musicbox.css"],
"entranceFile": "file-widget-1:musicPlay\/start.js"
},
{
"name": "\u7f51\u76d8\u5927\u56fe\u9884\u89c8",
"filesType": "*.jpg,*.jpeg,*.gif,*bmp,*.png,*jpe,*.cur,*.svgz,*.ico",
"filesIcon": {
"jpg": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"jpeg": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"gif": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"bmp": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"png": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"jpe": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"cur": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"svgz": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"tif": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"tiff": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"],
"ico": ["fileicon-small-pic", "default-large", "fileicon-middle-pic"]
},
"depsFiles": ["file-widget-1:preview\/picPreview.css"],
"entranceFile": "file-widget-1:preview\/start.js"
},
{
"name": "sysIcon",
"filesType": "*.exe,*.msi,*.dmg,*.pkg,*.psd,*.apk,*.key,*.ai,*.ipa",
"filesIcon": {
"exe": ["fileicon-sys-s-exe", "fileicon-sys-l-exe"],
"msi": ["fileicon-sys-s-exe", "fileicon-sys-l-exe"],
"dmg": ["fileicon-sys-s-exe", "fileicon-sys-l-dmg"],
"pkg": ["fileicon-sys-s-exe", "fileicon-sys-l-dmg"],
"psd": ["fileicon-sys-s-psd", "fileicon-sys-l-psd"],
"apk": ["fileicon-sys-s-apk", "fileicon-sys-l-apk"],
"key": ["fileicon-sys-s-key", "fileicon-sys-l-key"],
"ai": ["fileicon-sys-s-ai", "fileicon-sys-l-ai"],
"ipa": ["fileicon-sys-s-ipa", "fileicon-sys-l-ipa"],
"pages": ["fileicon-sys-s-pages", "fileicon-sys-l-pages"],
"numbers": ["fileicon-sys-s-numbers", "fileicon-sys-l-numbers"],
"eot": ["fileicon-sys-s-fonts", "fileicon-sys-l-fonts"],
"ttf": ["fileicon-sys-s-fonts", "fileicon-sys-l-fonts"],
"woff": ["fileicon-sys-s-fonts", "fileicon-sys-l-fonts"],
"eps": ["fileicon-sys-s-eps", "fileicon-sys-l-eps"],
"lnk": ["fileicon-sys-s-links", "fileicon-sys-l-links"],
"link": ["fileicon-sys-s-links", "fileicon-sys-l-links"],
"swf": ["fileicon-sys-s-swf", "fileicon-sys-l-swf"],
"php": ["fileicon-sys-s-code", "fileicon-sys-l-code"],
"c": ["fileicon-sys-s-code", "fileicon-sys-l-code"],
"js": ["fileicon-sys-s-code", "fileicon-sys-l-code"],
"css": ["fileicon-sys-s-code", "fileicon-sys-l-code"],
"html": ["fileicon-sys-s-web", "fileicon-sys-l-web"],
"htm": ["fileicon-sys-s-web", "fileicon-sys-l-web"],
"xhtml": ["fileicon-sys-s-web", "fileicon-sys-l-web"],
"java": ["fileicon-sys-s-code", "fileicon-sys-l-code"],
"cc": ["fileicon-sys-s-code", "fileicon-sys-l-code"],
"python": ["fileicon-sys-s-code", "fileicon-sys-l-code"],
"json": ["fileicon-sys-s-code", "fileicon-sys-l-code"],
"sh": ["fileicon-sys-s-code", "fileicon-sys-l-code"],
"bat": ["fileicon-sys-s-code", "fileicon-sys-l-code"],
"ejs": ["fileicon-sys-s-code", "fileicon-sys-l-code"],
"xml": ["fileicon-sys-s-code", "fileicon-sys-l-code"],
"ts": ["fileicon-sys-s-video", "fileicon-sys-l-video"]
}
},
{
"name": "\u7f51\u76d8\u89c6\u9891",
"filesType": "*.wmv,*.rmvb,*.mpeg4,*.mpeg2,*.flv,*.avi,*.3gp,*.mpga,*.qt,*.rm,*.wmz,*.wmd,*.wvx,*.wmx,*.wm,*.mpg,*.mp4,*.mkv,*.mpeg,*mov,*.asf,*.m4v,*.m3u8",
"filesIcon": {
"wmv": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"rmvb": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"mpeg4": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"mpeg2": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"flv": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"avi": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"3gp": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"mpga": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"qt": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"rm": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"wmz": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"wmd": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"wvx": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"wmx": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"wm": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"mpg": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"mp4": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"mkv": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"mpeg": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"mov": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"asf": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"m4v": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"],
"m3u8": ["fileicon-small-video", "fileicon-large-video", "fileicon-middle-video"]
},
"preload": true,
"entranceFile": "file-widget-1:video\/start.js"
}
]
if (suffix == "")
return "dir-small"
let css = ""
icons.forEach(x => {
//console.log(x.filesIcon.hasOwnProperty(suffix))
if (x.filesIcon.hasOwnProperty(suffix)) {
css = x.filesIcon[suffix][0]
return false
}
})
if (css == '') {
css = 'default-small'
}
return css;
}
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment