Commit f8dee2dc authored by Zhang Xiaojie's avatar Zhang Xiaojie

Merge branch 'dev' of gitlab.33.cn:chenqikuai/fns_front_2 into dev

parents 834c77f5 c0ffa9ea
VUE_APP_BANK_CODE=105
VUE_APP_REVIEW=yes
VUE_APP_BANK_CODE=105
NODE_ENV=production
VUE_APP_REVIEW=yes
...@@ -9,5 +9,7 @@ ...@@ -9,5 +9,7 @@
[gitlab](https://gitlab.33.cn/chenqikuai/fns_front_2) [gitlab](https://gitlab.33.cn/chenqikuai/fns_front_2)
# 打包部署 # 打包部署
## 普通打包
npm run build npm run build
## 提供ios app审核的打包
npm run buildReview
\ No newline at end of file
...@@ -4,7 +4,9 @@ ...@@ -4,7 +4,9 @@
"private": true, "private": true,
"scripts": { "scripts": {
"serve": "vue-cli-service serve --mode eruda", "serve": "vue-cli-service serve --mode eruda",
"serveReview": "vue-cli-service serve --mode DevReview",
"build": "vue-cli-service build --report", "build": "vue-cli-service build --report",
"buildReview": "vue-cli-service build --mode ProReview",
"bd": "vue-cli-service build --mode eruda & bash ./deploy.sh", "bd": "vue-cli-service build --mode eruda & bash ./deploy.sh",
"bd_110": "vue-cli-service build & bash ./deploy_110.sh" "bd_110": "vue-cli-service build & bash ./deploy_110.sh"
}, },
......
...@@ -23,7 +23,7 @@ ...@@ -23,7 +23,7 @@
<!-- <script src="//at.alicdn.com/t/font_2711356_k19r0hh1f4.js"></script> --> <!-- <script src="//at.alicdn.com/t/font_2711356_k19r0hh1f4.js"></script> -->
<script src="//at.alicdn.com/t/font_2711356_53bl5jmwu2e.js"></script> <script src="//at.alicdn.com/t/font_2711356_53bl5jmwu2e.js"></script>
<script> <script>
console.log('v.0.1.12'); console.log('v.0.1.14');
</script> </script>
</body> </body>
......
...@@ -4,9 +4,9 @@ ...@@ -4,9 +4,9 @@
<div class="box1 flex-col flex-grow justify-between overflow-hidden"> <div class="box1 flex-col flex-grow justify-between overflow-hidden">
<span class="info8">{{ info?.title }}</span> <span class="info8">{{ info?.title }}</span>
<span class="info10">{{ info?.desc }}</span> <span class="info10">{{ info?.desc }}</span>
<div class="layer4 flex pr-20"> <div class="layer4 flex pr-12">
<span class="info9">{{ info?.writer }}</span> <span class="info9 mr-2">{{ info?.writer }}</span>
<span class="word24">{{ $format(info?.created_at, 'YYYY-MM-DD') }}</span> <span class="word24 flex-shrink-0">{{ $format(info?.created_at, 'YYYY-MM-DD') }}</span>
</div> </div>
</div> </div>
<div class="box2 ml-4 flex-shrink-0"> <div class="box2 ml-4 flex-shrink-0">
...@@ -96,6 +96,7 @@ export default defineComponent({ ...@@ -96,6 +96,7 @@ export default defineComponent({
text-align: left; text-align: left;
overflow: hidden; overflow: hidden;
text-overflow: ellipsis; text-overflow: ellipsis;
white-space: nowrap
} }
.word24 { .word24 {
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
<div class=" text-sm text-gray-800 text-justify pt-3 news-info">{{ info.desc }}</div> <div class=" text-sm text-gray-800 text-justify pt-3 news-info">{{ info.desc }}</div>
<div <div
v-if="showImg" v-if="showImg"
class=" h-32 bg-app-blue mt-2 bg-cover bg-center bg-no-repeat" class=" h-32 bg-gray-200 mt-2 bg-cover bg-center bg-no-repeat"
:style="{'background-image': `url('${url}')`}"></div> :style="{'background-image': `url('${url}')`}"></div>
<div class=" text-xs text-gray-400 py-5 border-b border-red border-solid">发布时间:{{ $format(info.update_at, 'YYYY-MM-DD') }} &nbsp;&nbsp;&nbsp;作者: {{ info.writer }}</div> <div class=" text-xs text-gray-400 py-5 border-b border-red border-solid">发布时间:{{ $format(info.update_at, 'YYYY-MM-DD') }} &nbsp;&nbsp;&nbsp;作者: {{ info.writer }}</div>
</div> </div>
......
import router from '@/router' import router from '@/router'
import { getUserMsg } from '@/utils/userMsg' import { deleteUserMsg, getUserMsg } from '@/utils/userMsg'
import axios, { AxiosRequestConfig, AxiosResponse } from 'axios' import axios, { AxiosRequestConfig, AxiosResponse } from 'axios'
import { Toast } from 'vant' import { Toast } from 'vant'
...@@ -12,7 +12,7 @@ baseAxios.interceptors.response.use( ...@@ -12,7 +12,7 @@ baseAxios.interceptors.response.use(
const ret = baseRet.data as iRet const ret = baseRet.data as iRet
if ([504, 503].includes(ret.code)) { if ([504, 503].includes(ret.code)) {
Toast.fail(ret.msg) Toast.fail(ret.msg)
localStorage.clear() deleteUserMsg()
router.push({ router.push({
name: 'Login', name: 'Login',
}) })
......
export function isReviewMode() {
return process.env.VUE_APP_REVIEW === 'yes'
}
This diff is collapsed.
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
<div class=" text-xs text-gray-800 pt-3 news-info">{{ info.desc }}</div> <div class=" text-xs text-gray-800 pt-3 news-info">{{ info.desc }}</div>
<div <div
v-if="showImg" v-if="showImg"
class=" h-32 bg-app-blue mt-2 bg-cover bg-center bg-no-repeat" class=" h-32 bg-gray-200 mt-2 bg-cover bg-center bg-no-repeat"
:style="{'background-image': `url('${url}')`}"></div> :style="{'background-image': `url('${url}')`}"></div>
<div class=" text-xs text-gray-400 pt-4 tracking-wide">发布时间:{{ $format(info.update_at, 'YYYY-MM-DD') }}</div> <div class=" text-xs text-gray-400 pt-4 tracking-wide">发布时间:{{ $format(info.update_at, 'YYYY-MM-DD') }}</div>
</div> </div>
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
<div> <div>
<nav-bar title="新闻动态" :style="{ 'background-color':'#F7F7FA'}" :showSearchIcon="true" :path="{path: '/Search', query: { type: 'news' }}"/> <nav-bar title="新闻动态" :style="{ 'background-color':'#F7F7FA'}" :showSearchIcon="true" :path="{path: '/Search', query: { type: 'news' }}"/>
<div class=" mx-5 pt-3"> <div class=" mx-5 pt-3">
<van-pull-refresh v-model="loading" @refresh="onRefresh"> <van-pull-refresh class="divide-y" v-model="refreshing" @refresh="onRefresh">
<van-list <van-list
v-model:loading="loading" v-model:loading="loading"
:finished="finished" :finished="finished"
...@@ -87,5 +87,7 @@ export default defineComponent({ ...@@ -87,5 +87,7 @@ export default defineComponent({
</script> </script>
<style scoped> <style scoped>
.divide-y {
min-height: calc(100vh - 46px);
}
</style> </style>
\ No newline at end of file
<template> <template>
<div> <div>
<nav-bar title="政策支持" :style="{ 'background-color':'#F7F7FA'}" :showSearchIcon="true" :path="{path: '/Search', query: {type: 'policy'}}" /> <nav-bar title="政策支持" :style="{ 'background-color':'#F7F7FA'}" :showSearchIcon="true" :path="{path: '/Search', query: {type: 'policy'}}" />
<div class=" mx-5 pt-3 divide-y"> <div class=" mx-5 pt-3">
<van-pull-refresh v-model="loading" @refresh="onRefresh"> <van-pull-refresh class="divide-y" v-model="refreshing" @refresh="onRefresh">
<van-list <van-list
v-model:loading="loading" v-model:loading="loading"
:finished="finished" :finished="finished"
...@@ -89,4 +89,7 @@ export default defineComponent({ ...@@ -89,4 +89,7 @@ export default defineComponent({
<style scoped> <style scoped>
.divide-y {
min-height: calc(100vh - 46px);
}
</style> </style>
\ No newline at end of file
...@@ -9,6 +9,7 @@ export default [ ...@@ -9,6 +9,7 @@ export default [
icon: 'icon-daikuan', icon: 'icon-daikuan',
color: '#44D392', color: '#44D392',
routerName: 'Loan', routerName: 'Loan',
hideInReviewMode: true,
}, },
// { // {
// name: '理财产品', // name: '理财产品',
......
...@@ -11,13 +11,13 @@ ...@@ -11,13 +11,13 @@
</div>--> </div>-->
<group-title <group-title
class="mt-7" class="mt-7"
v-if="product_name" v-if="!isReviewMode && product_name"
title="热门产品" title="热门产品"
@click="$router.push({ name: 'Loan' })" @click="$router.push({ name: 'Loan' })"
/> />
<Skeleton :loading="skeLoading" :row="3" class="mt-2"> <Skeleton :loading="skeLoading" :row="3" class="mt-2">
<LoanCard <LoanCard
v-if="product_name" v-if="!isReviewMode && product_name"
:max_amount="max_amount" :max_amount="max_amount"
:product_name="product_name" :product_name="product_name"
:features="features" :features="features"
...@@ -85,6 +85,7 @@ import { Skeleton } from "vant"; ...@@ -85,6 +85,7 @@ import { Skeleton } from "vant";
import { eProductStatus } from "@/service/LoanProductService/type"; import { eProductStatus } from "@/service/LoanProductService/type";
import { getUserMsg } from "@/utils/userMsg" import { getUserMsg } from "@/utils/userMsg"
import { sendLive } from "@/utils/live"; import { sendLive } from "@/utils/live";
import { isReviewMode } from "@/utils/vueAppEnv";
export default defineComponent({ export default defineComponent({
components: { components: {
Banner, Banner,
...@@ -100,9 +101,17 @@ export default defineComponent({ ...@@ -100,9 +101,17 @@ export default defineComponent({
Skeleton, Skeleton,
}, },
data() { data() {
const theAppList = appList.filter(i=>{
if(isReviewMode()){
return !i.hideInReviewMode
}else{
return true;
}
})
return { return {
LiveRoomTitle: '', LiveRoomTitle: '',
appList, appList: theAppList,
skeLoading: false, skeLoading: false,
bannerList: [] as string[], bannerList: [] as string[],
notifyList: [] as any[], notifyList: [] as any[],
...@@ -135,8 +144,12 @@ export default defineComponent({ ...@@ -135,8 +144,12 @@ export default defineComponent({
features: "", features: "",
inst_name: "", inst_name: "",
hotLoanUuid: "", hotLoanUuid: "",
intervalId: NaN,
}; };
}, },
beforeUnmount(){
clearInterval(this.intervalId)
},
mounted() { mounted() {
this.getHotNews(); this.getHotNews();
this.fetchBannerList(); this.fetchBannerList();
...@@ -144,6 +157,7 @@ export default defineComponent({ ...@@ -144,6 +157,7 @@ export default defineComponent({
this.fetchActivityList(); this.fetchActivityList();
this.fetchLoanProductList(); this.fetchLoanProductList();
this.initLiveRoomCard(); this.initLiveRoomCard();
this.intervalId = window.setInterval(this.initLiveRoomCard, 1000)
}, },
methods: { methods: {
handleSeeMoreLive() { handleSeeMoreLive() {
...@@ -223,6 +237,11 @@ export default defineComponent({ ...@@ -223,6 +237,11 @@ export default defineComponent({
} }
}, },
}, },
computed: {
isReviewMode(){
return isReviewMode()
}
}
}); });
</script> </script>
<style scoped> <style scoped>
......
...@@ -11,6 +11,7 @@ ...@@ -11,6 +11,7 @@
<script lang="ts"> <script lang="ts">
import { eRole } from "@/types/roleType"; import { eRole } from "@/types/roleType";
import { getUserMsg } from "@/utils/userMsg"; import { getUserMsg } from "@/utils/userMsg";
import { isReviewMode } from "@/utils/vueAppEnv";
import { defineComponent } from "vue"; import { defineComponent } from "vue";
import TabBar from "./Components/TabBar/index.vue"; import TabBar from "./Components/TabBar/index.vue";
import tabList from "./tabList"; import tabList from "./tabList";
...@@ -25,8 +26,15 @@ export default defineComponent({ ...@@ -25,8 +26,15 @@ export default defineComponent({
return this.$route.name; return this.$route.name;
}, },
tabList() { tabList() {
const theTabList = tabList.filter(i => {
if(isReviewMode()){
return !i.hideInReviewMode
}else{
return true;
}
})
const user = getUserMsg() const user = getUserMsg()
return (user && tabList.filter(i => i.roles.includes(user.role2))) || tabList.filter(i => i.showNotLogin); return (user && theTabList.filter(i => i.roles.includes(user.role2))) || theTabList.filter(i => i.showNotLogin);
}, },
}, },
}); });
......
...@@ -25,6 +25,7 @@ export default [ ...@@ -25,6 +25,7 @@ export default [
icon1: 'icon-daikuan-tab', icon1: 'icon-daikuan-tab',
roles: [eRole.user, eRole.staff, eRole.doNotChat], roles: [eRole.user, eRole.staff, eRole.doNotChat],
showNotLogin: true, showNotLogin: true,
hideInReviewMode: true,
}, },
{ {
name: '我的', name: '我的',
......
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