Merge remote-tracking branch 'origin/dev_20230526_Mobile'

# Conflicts:
#	jero-boot/db/蔚来标准sql/dev_2nd_period.sql
This commit is contained in:
高嵩
2023-06-26 09:34:31 +08:00
16 changed files with 316 additions and 64 deletions
+64 -8
View File
@@ -19,12 +19,14 @@
margin: 0px;
padding: 0px;
}
.chromeframe {
margin: 0.2em 0;
background: #ccc;
color: #000;
padding: 0.2em 0;
}
#loader-wrapper {
position: fixed;
top: 0;
@@ -33,6 +35,7 @@
height: 100%;
z-index: 999999;
}
#loader {
display: block;
position: relative;
@@ -57,6 +60,7 @@
/* Chrome, Firefox 16+, IE 10+, Opera */
z-index: 1001;
}
#loader:before {
content: "";
position: absolute;
@@ -79,6 +83,7 @@
animation: spin 3s linear infinite;
/* Chrome, Firefox 16+, IE 10+, Opera */
}
#loader:after {
content: "";
position: absolute;
@@ -101,6 +106,7 @@
animation: spin 1.5s linear infinite;
/* Chrome, Firefox 16+, IE 10+, Opera */
}
@-webkit-keyframes spin {
0% {
-webkit-transform: rotate(0deg);
@@ -119,6 +125,7 @@
/* Firefox 16+, IE 10+, Opera */
}
}
@keyframes spin {
0% {
-webkit-transform: rotate(0deg);
@@ -137,6 +144,7 @@
/* Firefox 16+, IE 10+, Opera */
}
}
#loader-wrapper .loader-section {
position: fixed;
top: 0;
@@ -152,12 +160,15 @@
transform: translateX(0);
/* Firefox 16+, IE 10+, Opera */
}
#loader-wrapper .loader-section.section-left {
left: 0;
}
#loader-wrapper .loader-section.section-right {
right: 0;
}
/* Loaded */
.loaded #loader-wrapper .loader-section.section-left {
-webkit-transform: translateX(-100%);
@@ -169,6 +180,7 @@
-webkit-transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
}
.loaded #loader-wrapper .loader-section.section-right {
-webkit-transform: translateX(100%);
/* Chrome, Opera 15+, Safari 3.1+ */
@@ -179,11 +191,13 @@
-webkit-transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
}
.loaded #loader {
opacity: 0;
-webkit-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;
}
.loaded #loader-wrapper {
visibility: hidden;
-webkit-transform: translateY(-100%);
@@ -195,13 +209,16 @@
-webkit-transition: all 0.3s 1s ease-out;
transition: all 0.3s 1s ease-out;
}
/* JavaScript Turned Off */
.no-js #loader-wrapper {
display: none;
}
.no-js h1 {
color: #222222;
}
#loader-wrapper .load_title {
font-family: 'Open Sans';
color: #FFF;
@@ -214,6 +231,7 @@
opacity: 1;
line-height: 30px;
}
#loader-wrapper .load_title span {
font-weight: normal;
font-style: italic;
@@ -221,28 +239,66 @@
color: #FFF;
opacity: 0.5;
}
/* 滚动条优化 start */
::-webkit-scrollbar{
width:8px;
height:8px;
::-webkit-scrollbar {
width: 8px;
height: 8px;
}
::-webkit-scrollbar-track{
::-webkit-scrollbar-track {
background: #f6f6f6;
border-radius:2px;
border-radius: 2px;
}
::-webkit-scrollbar-thumb{
::-webkit-scrollbar-thumb {
background: #cdcdcd;
border-radius:2px;
border-radius: 2px;
}
::-webkit-scrollbar-thumb:hover{
::-webkit-scrollbar-thumb:hover {
background: #747474;
}
::-webkit-scrollbar-corner {
background: #f6f6f6;
}
/* 滚动条优化 end */
</style>
<!-- 全局配置 -->
<script>
// 判断当前设备
function isMobile() {
var userAgentInfo = navigator.userAgent
var mobileAgents = ['Android', 'iPhone', 'SymbianOS', 'Windows Phone', 'iPad', 'iPod']
var mobile_flag = false
//根据userAgent判断是否是手机
for (var v = 0; v < mobileAgents.length; v++) {
if (userAgentInfo.indexOf(mobileAgents[v]) > 0) {
mobile_flag = true
break
}
}
var screen_width = window.screen.width
var screen_height = window.screen.height
//根据屏幕分辨率判断是否是手机
if (screen_width < 500 && screen_height < 800) {
mobile_flag = true
}
return mobile_flag
}
if (isMobile()) {
if (location.pathname == '/dashboard/analysis' || location.pathname == '/') {
window.location.href = 'http://10.10.10.46:8102/phoneSearch'
}
}
</script>
</head>
<body>
+2 -1
View File
@@ -211,7 +211,8 @@
height: 32px !important;
line-height: 32px !important;
}
.page .ant-select-selection__rendered{
.page .ant-select-selection__rendered {
height: 32px !important;
line-height: 32px !important;
}
+1 -1
View File
@@ -119,7 +119,7 @@ router.beforeEach((to, from, next) => {
router.addRoutes(store.getters.addRouters)
let redirect = decodeURIComponent(from.query.redirect || to.path)
if (mobile) {
if (redirect == '/'){
if (redirect == '/' || redirect == '/dashboard/analysis'){
redirect = '/phoneSearch'
}
}
@@ -51,7 +51,7 @@
pageSize: 10,
loading: false,
finished: false,
isDisplay:false,
isDisplay: false
}
},
mounted() {
@@ -65,7 +65,10 @@
path: this.$route.query.goRouter,
query: {
searchValue: this.$route.query.searchValue,
activeTab: this.$route.query.activeTab
activeTab: this.$route.query.activeTab,
searchFlowType: this.$route.query.searchFlowType,
checked: this.$route.query.checked,
selectModel: this.$route.query.selectModel
}
})
} else {
@@ -77,9 +80,9 @@
path: '/phonePreHomoMangement',
query: {
taskDefinitionKey: this.$route.query.taskDefinitionKey,
projectName:this.$route.query.projectName,
projectName: this.$route.query.projectName,
id: item.id,
isDisplay:this.isDisplay
isDisplay: this.isDisplay
}
})
},
@@ -97,9 +97,7 @@
<van-form @submit="onSubmit" ref="form">
<div class="resultofhandlingClass"
v-if="$route.query.taskDefinitionKey == 'Task Review' ||
$route.query.taskDefinitionKey == 'Task responsibility confirmation' ||
($route.query.taskDefinitionKey == 'Task handling' && (queryForm.valueType == 'file' ||
queryForm.valueType == 'text' || queryForm.valueType == 'select'))"
$route.query.taskDefinitionKey == 'Task responsibility confirmation'"
style="margin-bottom: 0.1rem">
<span>{{$t('resultofhandling')}}</span>
<span class="requiredClass"
@@ -129,6 +127,7 @@
</van-radio-group>
</template>
</van-field>
<van-field
v-if="form.disposeResult == 'rzgcssc_tg'"
v-model.trim="form.reportNumber"
@@ -140,6 +139,7 @@
maxlength="200"
:placeholder="$t('pleaseEnter')+$t('reportNo')"
/>
<van-field
v-if="form.disposeResult == 'rzgcssc_tg'"
v-model.trim="form.productModel"
@@ -151,6 +151,7 @@
maxlength="200"
:placeholder="$t('pleaseEnter')+$t('productModel')"
/>
<van-field
v-if="form.disposeResult == 'rzgcssc_tg'"
v-model.trim="form.productionEnterpriseName"
@@ -187,7 +188,8 @@
<div class="resultofhandlingClass">
<span>{{$t('DeliverablesResult')}}</span>
<span class="requiredClass">*</span>
<span class="requiredClass" v-if="queryForm.valueType == 'file' ||
queryForm.valueType == 'select' || queryForm.valueType == 'text'">*</span>
</div>
<van-field name="uploader" class="uploader"
@@ -317,6 +319,7 @@
}
})
},
getDeliveryResult(item) {
getAction('sys/common/getFileInfos', { id: item }).then((res) => {
if (res.success) {
@@ -333,6 +336,7 @@
}
})
},
disposeResultChange(value) {
if (value == 'rzgcssc_tg') {
this.form.reasonForReturn = ''
@@ -349,6 +353,7 @@
this.form = { ...this.form }
})
},
onSubmit() {
this.$refs.form.validate().then(() => {
this.textLoading = this.$t('Submitting')
@@ -419,7 +424,15 @@
//保存
preservationClick() {
let content = []
content[0] = Object.assign(this.queryForm, this.form)
let fileListId = []
let form = JSON.parse(JSON.stringify(this.form))
if (this.queryForm.valueType == 'file') {
this.fileList.forEach(res => {
fileListId.push(res.id)
})
form.deliveryResult = fileListId.join(',')
}
content[0] = Object.assign(this.queryForm, form)
postAction(this.url.saveBatch, { 'dataList': content }).then((res) => {
if (res.success) {
this.ApprovedClick()
@@ -270,7 +270,10 @@
path: this.$route.query.goRouter,
query: {
searchValue: this.$route.query.searchValue,
activeTab: this.$route.query.activeTab
activeTab: this.$route.query.activeTab,
searchFlowType: this.$route.query.searchFlowType,
checked: this.$route.query.checked,
selectModel: this.$route.query.selectModel
}
})
} else {
@@ -455,7 +458,20 @@
if (res.success) {
this.$message.success(this.$t('OperationSuccessful'))
this.show = false
this.$router.go(-1)
if (this.$route.query.goRouter) {
this.$router.push({
path: this.$route.query.goRouter,
query: {
searchValue: this.$route.query.searchValue,
activeTab: this.$route.query.activeTab,
searchFlowType: this.$route.query.searchFlowType,
checked: this.$route.query.checked,
selectModel: this.$route.query.selectModel
}
})
} else {
this.$router.go(-1)
}
} else {
this.show = false
this.$message.warning(res.message)
+1 -1
View File
@@ -198,7 +198,7 @@
this.$router.push({
path: '/phoneToDoCenter',
query: {
flowType: num
searchFlowType: num
}
})
},
+28 -11
View File
@@ -278,17 +278,21 @@
},
mounted() {
document.title = 'NIO GRP'
if (this.$route.query.flowType) {
if (this.$route.query.searchFlowType) {
let flowType = this.$route.query.searchFlowType
flowType = flowType.split(',')
this.form.flowType = []
this.form.flowType.push(this.$route.query.flowType)
this.form = { ...this.form }
this.form.flowType = this.form.flowType.concat(flowType)
}
if (this.$route.query.searchValue){
this.phoneQueryValue = this.$route.query.searchValue
if (this.$route.query.searchValue) {
this.phoneQueryValue = this.$route.query.searchValue
}
if (this.$route.query.activeTab) {
this.activeTab = this.$route.query.activeTab
this.form.checked = JSON.parse(this.$route.query.checked)
this.form.selectModel = this.$route.query.selectModel
}
this.form = { ...this.form }
// this.toDoProcessPageNo = 1
// this.getToDoProcess()
},
@@ -476,8 +480,11 @@
DueDate: 'designDueDate',
remarks: 'designRemark',
goRouter: '/phoneToDoCenter',
searchValue:this.phoneQueryValue,
activeTab:this.activeTab
searchValue: this.phoneQueryValue,
activeTab: this.activeTab,
checked: this.form.checked,
selectModel: this.form.selectModel,
searchFlowType: this.form.flowType.join(','),
}
this.$router.push({
path: '/phoneProcessManagement',
@@ -499,8 +506,11 @@
DueDate: 'verifyDueDate',
remarks: 'verifyRemark',
goRouter: '/phoneToDoCenter',
searchValue:this.phoneQueryValue,
activeTab:this.activeTab
searchValue: this.phoneQueryValue,
activeTab: this.activeTab,
searchFlowType: this.form.flowType.join(','),
checked: this.form.checked,
selectModel: this.form.selectModel
}
this.$router.push({
path: '/phoneProcessManagement',
@@ -518,8 +528,11 @@
isDisplay: isTrue,
projectName: row.projectName,
goRouter: '/phoneToDoCenter',
searchValue:this.phoneQueryValue,
activeTab:this.activeTab
searchValue: this.phoneQueryValue,
activeTab: this.activeTab,
searchFlowType: this.form.flowType.join(','),
checked: this.form.checked,
selectModel: this.form.selectModel
}
})
} else {
@@ -597,6 +610,7 @@
}
})
},
getProcessDone() {
let form = JSON.parse(JSON.stringify(this.form))
if (form.flowType && form.flowType instanceof Array) {
@@ -623,6 +637,7 @@
}
})
},
getSentProcess() {
let form = JSON.parse(JSON.stringify(this.form))
if (form.flowType && form.flowType instanceof Array) {
@@ -649,6 +664,7 @@
}
})
},
processClick(type) {
if (!this.form.flowType) {
this.form.flowType = []
@@ -670,6 +686,7 @@
}
this.form = { ...this.form }
},
checkboxGroupColor(type) {
if (this.form.flowType && this.form.flowType.length > 0) {
for (let i = 0; i < this.form.flowType.length; i++) {
@@ -74,9 +74,9 @@ export const JeroThirdLoginMixin = {
doThirdLogin(token) {
if (this.thirdLoginState === false) {
this.thirdLoginState = true
let param={};
param.thirdType=this.thirdType
param.token=token
let param = {}
param.thirdType = this.thirdType
param.token = token
this.ThirdLogin(param).then(res => {
if (res.success) {
this.loginSuccess()
@@ -179,33 +179,63 @@ export const JeroThirdLoginMixin = {
}
})
},
loginSuccess () {
// 判断当前设备
isMobile() {
var userAgentInfo = navigator.userAgent
var mobileAgents = ['Android', 'iPhone', 'SymbianOS', 'Windows Phone', 'iPad', 'iPod']
var mobile_flag = false
//根据userAgent判断是否是手机
for (var v = 0; v < mobileAgents.length; v++) {
if (userAgentInfo.indexOf(mobileAgents[v]) > 0) {
mobile_flag = true
break
}
}
var screen_width = window.screen.width
var screen_height = window.screen.height
//根据屏幕分辨率判断是否是手机
if (screen_width < 500 && screen_height < 800) {
mobile_flag = true
}
return mobile_flag
},
loginSuccess() {
// update-begin- author:sunjianlei --- date:20190812 --- for: 登录成功后不解除禁用按钮,防止多次点击
// this.loginBtn = false
// update-end- author:sunjianlei --- date:20190812 --- for: 登录成功后不解除禁用按钮,防止多次点击
this.$router.push({ path: "/dashboard/analysis" }).catch(()=>{
let fullPath = ''
if (isMobile()) {
fullPath = '/phoneSearch'
} else {
fullPath = '/dashboard/analysis'
}
this.$router.push({ path: fullPath }).catch(() => {
console.log('登录跳转首页出错,这个错误从哪里来的')
})
this.$notification.success({
message: '欢迎',
description: `${timeFix()},欢迎回来`,
});
description: `${timeFix()},欢迎回来`
})
},
cmsFailed(err){
this.$notification[ 'error' ]({
message: "登录失败",
description:err,
duration: 4,
});
},
requestFailed (err) {
this.$notification[ 'error' ]({
cmsFailed(err) {
this.$notification['error']({
message: '登录失败',
description: ((err.response || {}).data || {}).message || err.message || "请求出现错误,请稍后再试",
duration: 4,
});
this.loginBtn = false;
description: err,
duration: 4
})
},
requestFailed(err) {
this.$notification['error']({
message: '登录失败',
description: ((err.response || {}).data || {}).message || err.message || '请求出现错误,请稍后再试',
duration: 4
})
this.loginBtn = false
}
}
}