611 lines
21 KiB
JavaScript
611 lines
21 KiB
JavaScript
|
|
import Vue from 'vue'
|
|
import 'normalize.css/normalize.css' // A modern alternative to CSS resets
|
|
// import { createVersionPolling } from "@/utils/version-polling.esm.js";
|
|
import ElementUI, { MessageBox } from 'element-ui'
|
|
import { getBasicDataAllSelect, getFrontInternationalizationList, getCurrentPublishInfo } from '@/api/dictionary/dictionary'
|
|
import { resetReadingRestTime } from '@/api/trials/reading'
|
|
// import 'element-ui/lib/theme-chalk/index.css'
|
|
import './assets/css/theme-blue/index.css' // 浅绿色主题
|
|
import './assets/css/iconfont/index.css' // 阿里巴巴图标库
|
|
// import locale from 'element-ui/lib/locale/lang/en' // lang i18n
|
|
import i18n from './lang'
|
|
import '@/styles/index.scss' // global css
|
|
|
|
import App from './App'
|
|
import store from './store'
|
|
import router from './router'
|
|
import WHITELIST from "./utils/whiteList"
|
|
import '@/icons' // icon
|
|
import '@/permission' // permission control
|
|
import md5 from 'js-md5'
|
|
import VueClipboard from 'vue-clipboard2'
|
|
Vue.use(VueClipboard)
|
|
// import htmlToPdf from './utils/htmlToPdf'
|
|
// Vue.use(htmlToPdf)
|
|
import permission from './utils/permission'
|
|
Vue.use(permission)
|
|
|
|
import Viewer from 'v-viewer'
|
|
import './assets/css/viewer.css'
|
|
Viewer.setDefaults({
|
|
// navbar: true, //底部缩略图
|
|
toolbar: {
|
|
zoomIn: true,
|
|
zoomOut: true,
|
|
reset: true,
|
|
prev: true,
|
|
next: true,
|
|
rotateLeft: true,
|
|
rotateRight: true,
|
|
flipHorizontal: true,
|
|
flipVertical: true,
|
|
}
|
|
})
|
|
Vue.use(Viewer)
|
|
|
|
|
|
import hasPermi from './directive/permission'
|
|
Vue.use(hasPermi)
|
|
|
|
// set ElementUI lang to EN
|
|
// Vue.use(ElementUI, { locale, size: 'medium' })
|
|
import upload from '@/components/element-ui/upload'
|
|
Vue.use(upload)
|
|
import Preview from '@/components/Preview/index'
|
|
Vue.use(Preview)
|
|
import Onlyoffice from '@/components/Preview_onlyoffice/index'
|
|
Vue.use(Onlyoffice)
|
|
import MFA from '@/components/MFA/index'
|
|
Vue.use(MFA)
|
|
import FB from '@/components/feedBack/index'
|
|
Vue.use(FB)
|
|
import FBT from '@/components/feedBackTable/index'
|
|
Vue.use(FBT)
|
|
import adaptive from '@/directive/adaptive/index'
|
|
// 表格自适应指令
|
|
Vue.use(adaptive)
|
|
import dialogDrag from '@/directive/dialogDrag'
|
|
// 窗口拖拽
|
|
Vue.use(dialogDrag)
|
|
if (!String.prototype.replaceAll) {
|
|
String.prototype.replaceAll = function (str, newStr) {
|
|
// 正则表达式
|
|
if (Object.prototype.toString.call(str).toLowerCase() === '[object regexp]') {
|
|
return this.replace(str, newStr)
|
|
}
|
|
// 字符串
|
|
return this.replace(new RegExp(str, 'g'), newStr)
|
|
}
|
|
}
|
|
import { parseTime, resetForm, selectDictLabel, selectDictLabels, handleTree, params } from '@/utils/ruoyi'
|
|
import { xfHasPermi } from '@/utils/hasPermi'
|
|
// 字典数据组件
|
|
import DictTag from '@/components/DictTag'
|
|
import DictData from '@/components/DictData'
|
|
import { getBasicDataSelect } from '@/api/dictionary/dictionary'
|
|
import { checkConfig } from '@/const/check/index'
|
|
import { getTrialBodyPartList } from "@/api/trials/setting";
|
|
// 全局方法挂载
|
|
var $q = params
|
|
Vue.prototype.checkConfig = checkConfig
|
|
Vue.prototype.$q = $q()
|
|
Vue.prototype.hasPermi = xfHasPermi
|
|
Vue.prototype.getDicts = getBasicDataSelect
|
|
Vue.prototype.selectDictLabel = selectDictLabel
|
|
Vue.prototype.selectDictLabels = selectDictLabels
|
|
Vue.component('DictTag', DictTag)
|
|
// 全局方法挂载
|
|
Vue.prototype.parseTime = parseTime
|
|
Vue.prototype.resetForm = resetForm
|
|
Vue.prototype.selectDictLabel = selectDictLabel
|
|
// Vue.prototype.download = download
|
|
Vue.prototype.handleTree = handleTree
|
|
Vue.prototype.$getObjectName = (url) => {
|
|
// console.log(url,'url')
|
|
// console.log(Vue.prototype.OSSclientConfig.viewEndpoint,'url')
|
|
var value = url;
|
|
let basePath = Vue.prototype.OSSclientConfig.viewEndpoint;
|
|
if (Vue.prototype.OSSclientConfig.ObjectStoreUse === 'AliyunOSS') {
|
|
basePath = Vue.prototype.OSSclientConfig.endPoint.split('https://').length > 1 ? Vue.prototype.OSSclientConfig.endPoint.split('https://')[1] : Vue.prototype.OSSclientConfig.endPoint;
|
|
}
|
|
return value.split(basePath)[1];
|
|
}
|
|
Vue.prototype.getGuid = (text) => {
|
|
text = md5(text)
|
|
let t1, t2, t3, t4, t5, t6, t7, t8, t9, t10
|
|
t1 = text.substr(0, 2)
|
|
t2 = text.substr(2, 2)
|
|
t3 = text.substr(4, 2)
|
|
t4 = text.substr(6, 2)
|
|
t5 = text.substr(8, 2)
|
|
t6 = text.substr(10, 2)
|
|
t7 = text.substr(12, 2)
|
|
t8 = text.substr(14, 2)
|
|
t9 = text.substr(16, 4)
|
|
t10 = text.substr(20, 12)
|
|
// console.log(`${t4+t3+t2+t1}-${t6+t5}-${t8+t7}-${t9}-${t10}`)
|
|
return `${t4 + t3 + t2 + t1}-${t6 + t5}-${t8 + t7}-${t9}-${t10}`
|
|
}
|
|
Vue.prototype.$validatePassword = (rule, value, callback) => {
|
|
var lang = zzSessionStorage.getItem('lang') ? zzSessionStorage.getItem('lang') : 'zh'
|
|
/* eslint-disable */
|
|
var reg1 = eval(process.env.VUE_APP_PASSWORD_FOR_PERMISSION) ? new RegExp(`${process.env.VUE_APP_PASSWORD_FOR_REGULAR}`) : /.*/g; //密码必须是8位以上、必须含有字母、数字、特殊符号
|
|
if (!reg1.test(value)) {
|
|
callback(
|
|
new Error(_vm.$t('env:regExp:formatPassword')))
|
|
} else {
|
|
callback();
|
|
}
|
|
}
|
|
|
|
DictData.install()
|
|
|
|
import global_ from './components/Global'
|
|
Vue.prototype.GLOBAL = global_
|
|
Vue.config.productionTip = false
|
|
Vue.prototype.$upload = () => {
|
|
_vm.$forceUpdate()
|
|
}
|
|
Vue.prototype.$guid = () => {
|
|
return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
|
|
var r = Math.random() * 16 | 0, v = c == 'x' ? r : (r & 0x3 | 0x8);
|
|
return v.toString(16);
|
|
});
|
|
}
|
|
Vue.prototype.fileToBlob = (file) => {
|
|
// 创建 FileReader 对象
|
|
const reader = new FileReader()
|
|
return new Promise(resolve => {
|
|
// FileReader 添加 load 事件
|
|
reader.addEventListener('load', (e) => {
|
|
let blob
|
|
if (typeof e.target.result === 'object') {
|
|
blob = new Blob([e.target.result])
|
|
} else {
|
|
blob = e.target.result
|
|
}
|
|
resolve(blob)
|
|
})
|
|
// FileReader 以 ArrayBuffer 格式 读取 File 对象中数据
|
|
reader.readAsArrayBuffer(file)
|
|
})
|
|
}
|
|
|
|
var _vm
|
|
async function VueInit() {
|
|
var params
|
|
var res
|
|
if (~window.location.href.indexOf('/readingDicoms') || ~window.location.href.indexOf('/noneDicomReading') || ~window.location.href.indexOf('/criterionquestions') || ~window.location.href.indexOf('/petct') || ~window.location.href.indexOf('/fusion')) {
|
|
params = $q('TrialReadingCriterionId')
|
|
res = await getBasicDataAllSelect(params)
|
|
} else if (~window.location.href.indexOf('/ecrfPreview')) {
|
|
params = $q('SystemReadingCriterionId')
|
|
res = await getBasicDataAllSelect(params, true)
|
|
} else {
|
|
res = await getBasicDataAllSelect(params)
|
|
}
|
|
var Internationalization = await getFrontInternationalizationList()
|
|
Vue.prototype.$tl = Internationalization.Result
|
|
let zhMessages = {}, enMessages = {}
|
|
Vue.prototype.$tl.forEach(v => {
|
|
// zhMessages[v.Description + '_' + v.Code] = v.ValueCN
|
|
// enMessages[v.Description + '_' + v.Code] = v.Value
|
|
zhMessages[v.Code] = v.ValueCN
|
|
enMessages[v.Code] = v.Value
|
|
})
|
|
// 获取版本信息
|
|
let PublishInfo = await getCurrentPublishInfo();
|
|
Vue.prototype.$version = PublishInfo.Result;
|
|
// 获取检查部位
|
|
Vue.prototype.$getBodyPart = (id) => {
|
|
return new Promise(async (resolve, reject) => {
|
|
try {
|
|
let params = {
|
|
TrialId: id
|
|
}
|
|
let BodyPart = await getTrialBodyPartList(params)
|
|
if (BodyPart.IsSuccess) {
|
|
resolve(BodyPart.Result);
|
|
} else {
|
|
reject(BodyPart);
|
|
}
|
|
} catch (err) {
|
|
reject(err)
|
|
}
|
|
})
|
|
}
|
|
i18n.mergeLocaleMessage('zh', zhMessages)
|
|
i18n.mergeLocaleMessage('en', enMessages)
|
|
Vue.use(ElementUI, {
|
|
i18n: (key, value) => i18n.t(key, value),
|
|
size: 'medium'
|
|
})
|
|
let d = function (code) {
|
|
var dictInfo = res.Result
|
|
var lang = zzSessionStorage.getItem('lang') ? zzSessionStorage.getItem('lang') : 'zh'
|
|
try {
|
|
for (var code in dictInfo) {
|
|
var dictList = (dictInfo[code] && dictInfo[code].length > 0) ? dictInfo[code].map(dict => {
|
|
return {
|
|
id: dict.Id,
|
|
label: lang === 'zh' ? dict.ValueCN : dict.Value,
|
|
value: dict.DataTypeEnum === 3 ? eval(dict.Code) : dict.IsEnumInt ? parseInt(dict.Code) : dict.Code,
|
|
raw: Object.assign({}, dict),
|
|
IsBaseLineUse: false,
|
|
IsFollowVisitUse: false
|
|
}
|
|
}) : []
|
|
dictInfo[code] = dictList
|
|
}
|
|
} catch (e) {
|
|
console.error(e)
|
|
}
|
|
return dictInfo
|
|
}()
|
|
Vue.prototype.$d = d
|
|
Vue.prototype.$fd = function (code, v, type, arr, key = 'label') {
|
|
try {
|
|
let data = arr || d;
|
|
type = type || 'value';
|
|
// code === 'YesOrNo' ? console.log(d) : ''
|
|
return data[code].find(i => {
|
|
return i[type] === v
|
|
}) ? data[code].find(i => {
|
|
return i[type] === v
|
|
})[key] : ''
|
|
} catch (e) {
|
|
}
|
|
}
|
|
Vue.prototype.$company = (isShort = true) => {
|
|
let companyName = null
|
|
if (localStorage.getItem('CompanyInfo')) {
|
|
let CompanyInfo = JSON.parse(localStorage.getItem('CompanyInfo'))
|
|
let isZh = zzSessionStorage.getItem('lang') === 'zh' || _vm.$i18n.locale == 'zh'
|
|
if (isZh) {
|
|
companyName = isShort ? CompanyInfo.CompanyShortNameCN : CompanyInfo.CompanyNameCN
|
|
} else {
|
|
companyName = isShort ? CompanyInfo.CompanyShortName : CompanyInfo.CompanyName
|
|
}
|
|
}
|
|
return companyName;
|
|
}
|
|
Vue.prototype.$updateDictionary = function () {
|
|
Vue.prototype.$d = function (code) {
|
|
var dictInfo = res.Result
|
|
var lang = zzSessionStorage.getItem('lang') ? zzSessionStorage.getItem('lang') : 'zh'
|
|
try {
|
|
for (var code in dictInfo) {
|
|
var dictList = (dictInfo[code] && dictInfo[code].length > 0) ? dictInfo[code].map(dict => {
|
|
return {
|
|
id: dict.raw.Id,
|
|
label: lang === 'zh' ? dict.raw.ValueCN : dict.raw.Value,
|
|
value: dict.raw.DataTypeEnum === 3 ? eval(dict.raw.Code) : dict.raw.IsEnumInt ? parseInt(dict.raw.Code) : dict.raw.Code,
|
|
raw: Object.assign({}, dict.raw),
|
|
IsBaseLineUse: false,
|
|
IsFollowVisitUse: false
|
|
}
|
|
}) : []
|
|
_vm.$set(dictInfo, code, dictList)
|
|
}
|
|
} catch (e) {
|
|
console.error(e)
|
|
}
|
|
return dictInfo
|
|
}()
|
|
_vm.$forceUpdate()
|
|
}
|
|
Vue.prototype.$EventBus = new Vue()
|
|
Vue.prototype.$path = []
|
|
var t = function (key) {
|
|
if (!~Vue.prototype.$path.indexOf(key)) {
|
|
Vue.prototype.$path.push(key)
|
|
}
|
|
let text = i18n.t(key)
|
|
if (Array.isArray(store.state.trials.config.TrialObjectNameList) && store.state.trials.config.TrialObjectNameList.length > 0) {
|
|
let arr = JSON.parse(JSON.stringify(store.state.trials.config.TrialObjectNameList))
|
|
arr.sort((a, b) => b.Name.length - a.Name.length)
|
|
arr.forEach(item => {
|
|
let test = new RegExp(item.Name, 'ig')
|
|
text = text.replace(test, item.TrialName)
|
|
})
|
|
}
|
|
let CompanyInfo = JSON.parse(localStorage.getItem('CompanyInfo'))
|
|
if(CompanyInfo&&CompanyInfo.SystemShortName){
|
|
let test = new RegExp('IRC', 'ig')
|
|
text = text.replace(test, 'LILI')
|
|
}
|
|
// return i18n.t(key)
|
|
return text;
|
|
}
|
|
Vue.prototype.$t = t
|
|
_vm = new Vue({
|
|
el: '#app',
|
|
router,
|
|
store,
|
|
i18n,
|
|
data: {
|
|
unlock: {
|
|
my_username: null,
|
|
my_password: null,
|
|
view: false
|
|
}
|
|
},
|
|
render: h => h(App)
|
|
})
|
|
var isLock = zzSessionStorage.getItem('isLock')
|
|
var isOpen = false
|
|
let count = 0;
|
|
if (eval(process.env.VUE_APP_LOGIN_FOR_PERMISSION)) {
|
|
setInterval(() => {
|
|
var lang = zzSessionStorage.getItem('lang') ? zzSessionStorage.getItem('lang') : 'zh'
|
|
if (WHITELIST.includes(_vm.$route.path)) {
|
|
return
|
|
}
|
|
if (_vm.$store.state.user.userId !== zzSessionStorage.getItem('userId')) {
|
|
window.location.href = `/login`
|
|
zzSessionStorage.removeItem('lastWorkbench')
|
|
_vm.$alert(_vm.$t("env:sso:tip"), {
|
|
type: 'warning',
|
|
})
|
|
}
|
|
}, 3000)
|
|
}
|
|
const waitOperate = (callback, second, callback2, second2) => {
|
|
let x;
|
|
let y;
|
|
let timer;
|
|
//监听键盘
|
|
function countTime() {
|
|
count++
|
|
localStorage.setItem('count', count)
|
|
if (count == parseInt(second2) || isLock === 'true') {
|
|
callback2();
|
|
}
|
|
if (count >= second) {
|
|
callback();
|
|
count = 0;
|
|
localStorage.removeItem('count')
|
|
}
|
|
}
|
|
var blob = new Blob([document.querySelector('#worker').textContent]);
|
|
var url = window.URL.createObjectURL(blob);
|
|
var worker = new Worker(url);
|
|
worker.onmessage = function (e, msg) {
|
|
if (localStorage.getItem('count') === '0') {
|
|
count = 0
|
|
localStorage.removeItem('count')
|
|
}
|
|
countTime()
|
|
}
|
|
//监听鼠标
|
|
document.onmousemove = function (event) {
|
|
const x1 = event.clientX;
|
|
const y1 = event.clientY;
|
|
if (x != x1 || y != y1) {
|
|
count = 0;
|
|
localStorage.setItem('count', '0')
|
|
}
|
|
x = x1;
|
|
y = y1;
|
|
};
|
|
document.onkeyup = function () {
|
|
count = 0;
|
|
localStorage.setItem('count', '0')
|
|
};
|
|
}
|
|
const h = _vm.$createElement
|
|
/* eslint-disable */
|
|
// eval(process.env.VUE_APP_LOGOUT_FOR_PERMISSION)
|
|
// process.env.VUE_APP_LOGOUT_FOR_TIME
|
|
// eval(process.env.VUE_APP_LOCK_FOR_PERMISSION)
|
|
// process.env.VUE_APP_LOCK_FOR_TIME
|
|
// window.VUE_APP_COMPANY_NAME = process.env.VUE_APP_COMPANY_NAME;
|
|
waitOperate(eval(process.env.VUE_APP_LOGOUT_FOR_PERMISSION) ? () => {
|
|
var lang = zzSessionStorage.getItem('lang') ? zzSessionStorage.getItem('lang') : 'zh'
|
|
if (_vm.$store.state.trials.unlock || WHITELIST.includes(_vm.$route.path)) {
|
|
count = 0;
|
|
localStorage.setItem('count', '0')
|
|
return
|
|
}
|
|
_vm.$store.dispatch('user/logout').then(res => {
|
|
// window.location.href = `/login`
|
|
try {
|
|
if (_vm.$msgbox && _vm.$msgbox.close) {
|
|
_vm.$msgbox.close();
|
|
}
|
|
} catch (err) {
|
|
console.log(err)
|
|
}
|
|
_vm.$FB.close();
|
|
_vm.$FBT.close();
|
|
_vm.$MFA.close();
|
|
isOpen = false
|
|
isLock = null
|
|
zzSessionStorage.removeItem('isLock')
|
|
router.push("/login")
|
|
}).then(() => {
|
|
// _vm.$alert(lang === 'zh' ? '由于您长时间未操作,为保护您的数据安全已强制将您下线,如果需要继续操作请重新登陆!' : 'No operation for a long time non-operation, you have been forced logout to protect data security. If continue to operate, please login again!', {
|
|
// type: 'warning',
|
|
// })
|
|
_vm.$alert(_vm.$t("env:loginOut"), {
|
|
type: 'warning',
|
|
})
|
|
})
|
|
|
|
} : () => { }, process.env.VUE_APP_LOGOUT_FOR_TIME,
|
|
eval(process.env.VUE_APP_LOCK_FOR_PERMISSION) ? () => {
|
|
var lang = zzSessionStorage.getItem('lang') ? zzSessionStorage.getItem('lang') : 'zh'
|
|
if (_vm.$store.state.trials.unlock || WHITELIST.includes(_vm.$route.path)) {
|
|
count = 0;
|
|
localStorage.setItem('count', '0')
|
|
if (_vm.$route.path === '/login') {
|
|
zzSessionStorage.removeItem('lastWorkbench')
|
|
zzSessionStorage.removeItem('isLock')
|
|
isLock = null
|
|
}
|
|
return
|
|
}
|
|
if (isOpen) {
|
|
return
|
|
}
|
|
isOpen = true
|
|
zzSessionStorage.setItem('isLock', 'true')
|
|
_vm.$msgbox({
|
|
title: _vm.$t("env:lock:msgBox:title"),
|
|
confirmButtonText: _vm.$t("env:lock:msgBox:confirmButtonText"),
|
|
showClose: false,
|
|
beforeClose: (action, instance, done) => {
|
|
if (action === 'confirm') {
|
|
if (!_vm.unlock.my_username) {
|
|
_vm.$message.warning(_vm.$t("env:lock:msgBox:iupUser"))
|
|
return
|
|
}
|
|
if (!_vm.unlock.my_password) {
|
|
_vm.$message.warning(_vm.$t("env:lock:msgBox:inpPassword"))
|
|
return
|
|
}
|
|
var my_username = zzSessionStorage.getItem('my_username')
|
|
var my_password = zzSessionStorage.getItem('my_password')
|
|
let my_userid = zzSessionStorage.getItem('userId')
|
|
let my_EMail = zzSessionStorage.getItem('my_EMail') || ''
|
|
if (md5(_vm.unlock.my_password) === my_password && (my_username === _vm.unlock.my_username || my_EMail.toUpperCase() === vm.unlock.my_username.toUpperCase())) {
|
|
resetReadingRestTime().then(() => {
|
|
})
|
|
const closeLock = (_vm) => {
|
|
_vm.$message.success(_vm.$t("env:lock:msgBox:lockSuccess"))
|
|
_vm.unlock = {
|
|
my_username: null,
|
|
my_password: null,
|
|
view: false
|
|
}
|
|
isOpen = false
|
|
count = 0;
|
|
isLock = null
|
|
zzSessionStorage.removeItem('isLock')
|
|
localStorage.setItem('count', '0')
|
|
document.querySelector('#my_username').value = null
|
|
document.querySelector('#my_password').value = null
|
|
setTimeout(() => {
|
|
done()
|
|
}, 500)
|
|
}
|
|
// if (eval(process.env.VUE_APP_LOCK_FOR_PERMISSION_MFA)) {
|
|
// sendMFAEmail({ UserId: my_userid, MfaType: 1 }).then((res) => {
|
|
// done();
|
|
// Vue.prototype.$MFA({
|
|
// status: "lock",
|
|
// UserId: my_userid,
|
|
// EMail: res.Result,
|
|
// username: my_username,
|
|
// callBack: () => {
|
|
// closeLock(_vm)
|
|
// },
|
|
// })
|
|
// })
|
|
// } else {
|
|
closeLock(_vm)
|
|
// }
|
|
|
|
} else {
|
|
// console.log(111)
|
|
_vm.$message.error(_vm.$t('env:lock:msgBox:userFail'))
|
|
}
|
|
}
|
|
},
|
|
message: h('div', {}, [
|
|
h('el-form', {
|
|
props: { labelWidth: "80px" }
|
|
}, [
|
|
h('el-form-item', {
|
|
props: { label: _vm.$t("env:lock:msgBox:form:username") },
|
|
}, [
|
|
h('input', {
|
|
props: {
|
|
value: _vm.unlock.my_username
|
|
},
|
|
attrs: {
|
|
id: 'my_username',
|
|
class: 'el-input__inner',
|
|
autocomplete: 'new-password'
|
|
},
|
|
on: {
|
|
change: (event) => {
|
|
_vm.unlock.my_username = event.target.value
|
|
},
|
|
input: (event) => {
|
|
_vm.unlock.my_username = event.target.value
|
|
}
|
|
}
|
|
})
|
|
]),
|
|
h('el-form-item', {
|
|
props: { label: _vm.$t("env:lock:msgBox:form:Password") },
|
|
attrs: {
|
|
style: "position: relative;"
|
|
}
|
|
}, [
|
|
h('input', {
|
|
props: {
|
|
value: _vm.unlock.my_password
|
|
},
|
|
ref: "unlock_my_password_input",
|
|
attrs: {
|
|
id: 'my_password',
|
|
class: 'el-input__inner',
|
|
type: _vm.unlock.view ? 'text' : 'password',
|
|
autocomplete: 'new-password',
|
|
style: "padding-right:25px"
|
|
},
|
|
on: {
|
|
change: (event) => {
|
|
_vm.unlock.my_password = event.target.value
|
|
},
|
|
input: (event) => {
|
|
_vm.unlock.my_password = event.target.value
|
|
}
|
|
}
|
|
}),
|
|
h('i', {
|
|
attrs: {
|
|
id: 'my_password_view',
|
|
class: "el-icon-view",
|
|
style: "cursor: pointer;position: absolute;top:35%;right:10px"
|
|
},
|
|
on: {
|
|
click: (event) => {
|
|
_vm.unlock.view = !_vm.unlock.view
|
|
if (_vm.unlock.view) {
|
|
_vm.$refs['unlock_my_password_input'].type = "text"
|
|
} else {
|
|
_vm.$refs['unlock_my_password_input'].type = "password"
|
|
}
|
|
},
|
|
}
|
|
}),
|
|
])
|
|
])
|
|
])
|
|
})
|
|
} : () => { }, process.env.VUE_APP_LOCK_FOR_TIME)
|
|
}
|
|
VueInit()
|
|
// createVersionPolling({
|
|
// appETagKey: "__APP_ETAG__",
|
|
// pollingInterval: 5 * 60 * 1000, // 单位为毫秒
|
|
// silent: process.env.NODE_ENV === false, // 开发环境下不检测
|
|
// onUpdate: (self) => {
|
|
// // 当检测到有新版本时,执行的回调函数,可以在这里提示用户刷新页面
|
|
// const result = confirm(_vm.$t("versionPolling:tip"));
|
|
// if (result) {
|
|
// self.onRefresh();
|
|
// } else {
|
|
// self.onCancel();
|
|
// }
|
|
// // 强制更新可以用alert
|
|
// // alert('有新版本,请刷新页面');
|
|
// },
|
|
// });
|
|
|
|
|
|
export default _vm |