Commit a5ccf151 authored by chenqikuai's avatar chenqikuai

Merge branch 'dev' into dev_chat

parents d3cf6ab6 1172252e
<template> <template>
<div class="mx-5"> <div class="mx-5">
<div class="wrap22 flex items-center" @click="$router.push({path: 'NewsDetail', query: { uuid: info?.uuid, type: 'news' }})"> <div class="wrap22 flex items-center" @click="$router.push({path: 'NewsDetail', query: { uuid: info?.uuid, type: 'news' }})">
<div class="box1 flex-col flex-grow justify-between"> <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>
<div class="layer4 flex pr-20"> <div class="layer4 flex pr-20">
<span class="info9">{{ info?.writer }}</span> <span class="info9">{{ info?.writer }}</span>
<span class="word24">{{ $format(info?.created_at, 'YYYY-MM-DD') }}</span> <span class="word24">{{ $format(info?.created_at, 'YYYY-MM-DD') }}</span>
...@@ -62,6 +63,23 @@ export default defineComponent({ ...@@ -62,6 +63,23 @@ export default defineComponent({
text-align: left; text-align: left;
overflow: hidden; overflow: hidden;
text-overflow: ellipsis; text-overflow: ellipsis;
white-space: nowrap
}
.info10 {
z-index: 205;
display: block;
overflow-wrap: break-word;
color: rgba(141, 146, 175, 1);
margin-top: 5px;
font-size: 12px;
letter-spacing: 0.1679999977350235px;
font-family: PingFangSC-Medium;
line-height: 25px;
text-align: left;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap
} }
.layer4 { .layer4 {
......
<template> <template>
<div @click="$router.push({path: 'NewsDetail', query: { uuid: info.uuid, type: 'policy' }})"> <div @click="$router.push({path: 'NewsDetail', query: { uuid: info.uuid, type: 'policy' }})">
<div class=" text-base text-gray-800 font-semibold pt-5">{{ info.title }}</div> <div class=" text-base text-gray-800 font-semibold pt-5 news-title">{{ info.title }}</div>
<!-- <p class=" text-xs text-gray-400 pt-5">{{ info.desc }}</p> --> <!-- <p class=" text-xs text-gray-400 pt-5">{{ info.desc }}</p> -->
<div class=" text-sm text-gray-800 text-justify pt-3">{{ info.desc }}</div> <div class=" text-sm text-gray-800 text-justify pt-3 news-info">{{ info.desc }}</div>
<div class=" text-xs text-gray-400 py-5 border-b border-red border-solid">发布时间:{{ $format(info.created_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.created_at, 'YYYY-MM-DD') }} &nbsp;&nbsp;&nbsp;作者: {{ info.writer }}</div>
</div> </div>
</template> </template>
...@@ -26,4 +26,16 @@ export default defineComponent({ ...@@ -26,4 +26,16 @@ export default defineComponent({
<style scoped> <style scoped>
.news-title {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap
}
.news-info {
display: -webkit-box;
overflow: hidden;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
word-break: break-all;
}
</style> </style>
\ No newline at end of file
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
<div class="word24"> <div class="word24">
<input <input
v-model.number="min_" v-model.number="min_"
@blur="checkMin1" @blur="checkInterstValid"
type="number" type="number"
placeholder="最低利率" placeholder="最低利率"
class="bg-transparent w-full text-center" class="bg-transparent w-full text-center"
...@@ -30,7 +30,7 @@ ...@@ -30,7 +30,7 @@
<input <input
type="number" type="number"
v-model.number="max_" v-model.number="max_"
@blur="checkMax1" @blur="checkInterstValid"
placeholder="最高利率" placeholder="最高利率"
class="bg-transparent w-full text-center" class="bg-transparent w-full text-center"
/> />
...@@ -46,7 +46,7 @@ ...@@ -46,7 +46,7 @@
<div class="word24"> <div class="word24">
<input <input
v-model.number="min_2" v-model.number="min_2"
@blur="checkMin2" @blur="checkAmountValid"
type="number" type="number"
placeholder="0" placeholder="0"
class="bg-transparent w-full text-center" class="bg-transparent w-full text-center"
...@@ -61,7 +61,7 @@ ...@@ -61,7 +61,7 @@
<input <input
type="number" type="number"
v-model.number="max_2" v-model.number="max_2"
@blur="checkMax2" @blur="checkAmountValid"
placeholder="9999" placeholder="9999"
class="bg-transparent w-full text-center" class="bg-transparent w-full text-center"
/> />
...@@ -89,9 +89,11 @@ ...@@ -89,9 +89,11 @@
<script lang="ts"> <script lang="ts">
import { defineComponent } from "vue"; import { defineComponent } from "vue";
import SelectList from "@/components/SelectList/index.vue"; import SelectList from "@/components/SelectList/index.vue";
import { Toast } from "vant";
export default defineComponent({ export default defineComponent({
components: { components: {
SelectList, SelectList,
Toast,
}, },
props: { props: {
bankList: Array, bankList: Array,
...@@ -123,17 +125,38 @@ export default defineComponent({ ...@@ -123,17 +125,38 @@ export default defineComponent({
type: Function, type: Function,
required: true, required: true,
}, },
checkInterstValid: {
type: Function,
required: true,
},
checkAmountValid: {
type: Function,
required: true,
},
}, },
methods:{ methods: {
checkMin1(){ // checkInterstValid(): boolean {
if(this.min_){ // let isValid = false;
console.log('blur'); // if (this.max && this.min) {
this.setMin(this.min); // isValid = false;
console.log('blur',this.min,this.min_); // if (this.max <= this.min) Toast.fail("最高利率必须大于最低利率");
// } else {
// this.min_ = +Number.parseFloat(this.min_ as string).toFixed(2) // isValid = true;
} // }
} // return isValid;
// },
// checkAmountValid(): boolean {
// let isValid = false;
// if (this.max2 && this.min2) {
// if (this.max2 <= this.min2) {
// isValid = false;
// Toast.fail("最高额度必须大于最低额度");
// } else {
// isValid = true;
// }
// }
// return isValid;
// },
}, },
computed: { computed: {
min_: { min_: {
......
<template> <template>
<div class="px-5"> <div class="px-5">
<pwd-setting <pwd-setting
:phone="$route.query.phone" :phone="Phone()"
:sendSmsFunc="sendSmsFunc" :sendSmsFunc="sendSmsFunc"
:setPwdFunc="setPwdFunc" :setPwdFunc="setPwdFunc"
/> />
...@@ -11,9 +11,20 @@ ...@@ -11,9 +11,20 @@
<script lang="ts"> <script lang="ts">
import PwdSetting from "./PwdSetting.vue"; import PwdSetting from "./PwdSetting.vue";
import { defineComponent } from "vue"; import { defineComponent } from "vue";
import { getUserMsg } from '@/utils/userMsg'
export default defineComponent({ export default defineComponent({
components: { PwdSetting }, components: { PwdSetting },
inject: ["sendSmsFunc", "setPwdFunc"], inject: ["sendSmsFunc", "setPwdFunc"],
methods: {}, created(){
console.log(this.$route.query.phone,'router');
this.Phone()
},
methods: {
Phone(){
const phone =getUserMsg()?.userInfo.phone+''
console.log(phone,'phone');
return phone
}
},
}); });
</script> </script>
...@@ -50,13 +50,14 @@ ...@@ -50,13 +50,14 @@
:setSelectedTypes="(v) => (selectedTypes = v)" :setSelectedTypes="(v) => (selectedTypes = v)"
:min="min" :min="min"
:max="max" :max="max"
:setMin="(v) => (min = +Number.parseFloat(v).toFixed(2))" :setMin="(v) => (min = +Number.parseFloat(v).toFixed(2))"
:setMax="(v) => (max = +Number.parseFloat(v).toFixed(2))" :setMax="(v) => (max = +Number.parseFloat(v).toFixed(2))"
:min2="min2" :min2="min2"
:max2="max2" :max2="max2"
:setMin2="(v) => (min2 = v)" :setMin2="(v) => (min2 = v)"
:setMax2="(v) => (max2 = v)" :setMax2="(v) => (max2 = v)"
:checkInterstValid="checkInterstValid"
:checkAmountValid="checkAmountValid"
/> />
</PopUp> </PopUp>
</div> </div>
...@@ -85,7 +86,7 @@ import { ...@@ -85,7 +86,7 @@ import {
} from "@/service/LoanProductService/index"; } from "@/service/LoanProductService/index";
import { simpleItemInfo } from "@/views/withMenu/Loan/types"; import { simpleItemInfo } from "@/views/withMenu/Loan/types";
import { iLoanProdcutItem } from "@/service/LoanProductService/type"; import { iLoanProdcutItem } from "@/service/LoanProductService/type";
import { Skeleton } from "vant"; import { Skeleton,Toast } from "vant";
import { import {
loanSearchState, loanSearchState,
setSearchResult, setSearchResult,
...@@ -100,6 +101,7 @@ export default defineComponent({ ...@@ -100,6 +101,7 @@ export default defineComponent({
LoanCard, LoanCard,
LoanFilter, LoanFilter,
Skeleton, Skeleton,
Toast
}, },
setup() { setup() {
const mode = ref(+useRoute().params.mode); const mode = ref(+useRoute().params.mode);
...@@ -236,6 +238,28 @@ export default defineComponent({ ...@@ -236,6 +238,28 @@ export default defineComponent({
setShow(v: boolean) { setShow(v: boolean) {
this.show = v; this.show = v;
}, },
checkInterstValid(): boolean {
let isValid = false;
if (this.max && this.min) {
isValid = false;
if (this.max <= this.min) Toast.fail("最高利率必须大于最低利率");
} else {
isValid = true;
}
return isValid;
},
checkAmountValid(): boolean {
let isValid = false;
if (this.max2 && this.min2) {
if (this.max2 <= this.min2) {
isValid = false;
Toast.fail("最高额度必须大于最低额度");
} else {
isValid = true;
}
}
return isValid;
},
showFilter() { showFilter() {
this.show = true; this.show = true;
this.selectedBanks = this.reqParams.selectedBanks; this.selectedBanks = this.reqParams.selectedBanks;
...@@ -281,8 +305,10 @@ export default defineComponent({ ...@@ -281,8 +305,10 @@ export default defineComponent({
min2: this.min2, min2: this.min2,
max2: this.max2, max2: this.max2,
}; };
this.queryList(); if(this.checkAmountValid() && this.checkInterstValid()){
this.show = false; this.queryList();
this.show = false;
}
}, },
queryList() { queryList() {
this.loading = true; this.loading = true;
......
<template> <template>
<div @click="$router.push({path: 'NewsDetail', query: { uuid: info.uuid, type: 'news' }})" class=" border-b border-gray-200 py-5"> <div @click="$router.push({path: 'NewsDetail', query: { uuid: info.uuid, type: 'news' }})" class=" border-b border-gray-200 py-5">
<div class=" text-base text-gray-900 font-semibold">{{ info.title }}</div> <div class=" text-base text-gray-900 font-semibold news-title">{{ info.title }}</div>
<div class=" text-xs text-gray-800 pt-3">{{ 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-app-blue mt-2 bg-cover bg-center bg-no-repeat"
...@@ -36,5 +36,16 @@ export default defineComponent({ ...@@ -36,5 +36,16 @@ export default defineComponent({
</script> </script>
<style scoped> <style scoped>
.news-title {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap
}
.news-info {
display: -webkit-box;
overflow: hidden;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
word-break: break-all;
}
</style> </style>
\ No newline at end of file
import Bridge from "@/utils/jsBridge2" import Bridge from "@/utils/jsBridge2"
export default [ export default [
{ {
name: '贷款服务', name: '贷款服务',
...@@ -41,7 +42,10 @@ export default [ ...@@ -41,7 +42,10 @@ export default [
icon: 'icon-jingcaizhibo', icon: 'icon-jingcaizhibo',
color: '#0FCBA5', color: '#0FCBA5',
cb(){ cb(){
new Bridge().bridge_live() new Bridge().bridge_live({
phone: JSON.parse(window.localStorage.getItem('USER_MSG') as string)?.userInfo.phone,
avatar: window.location.host + require('../../../assets/icons/avatar.png')
})
}, },
}, },
{ {
......
...@@ -15,12 +15,11 @@ ...@@ -15,12 +15,11 @@
<div class="px-5 py-2 items-center border-b border-gray-200"> <div class="px-5 py-2 items-center border-b border-gray-200">
<div class="flex justify-between items-center"> <div class="flex justify-between items-center">
<div> <div>
<div class=" text-sm font-semibold">登陆密码</div> <div class=" text-sm font-semibold">设置密码</div>
<div class=" text-xs text-gray-400 pt-1">保障账户登录安全</div> <div class=" text-xs text-gray-400 pt-1">保障账户登录安全</div>
</div> </div>
<div class="flex items-center text-xs h-1 text-right"> <div class="flex items-center text-xs h-1 text-right">
<span v-if="hasPassword == 3" @click="pushRouter">设置</span> <span @click="pushRouter">设置</span>
<span v-else-if="hasPassword == 2" @click="pushRouter">修改</span>
<icon <icon
name="icon-gengduo" name="icon-gengduo"
color="#8E92A3" color="#8E92A3"
...@@ -43,14 +42,16 @@ import { deleteUserMsg, getUserMsg } from '@/utils/userMsg' ...@@ -43,14 +42,16 @@ import { deleteUserMsg, getUserMsg } from '@/utils/userMsg'
import filter from "@/filter" import filter from "@/filter"
import router from '@/router' import router from '@/router'
import { userLogout } from '@/service/UserManagementService' import { userLogout } from '@/service/UserManagementService'
import { userChangePwd,userLogin} from '@/service/UserManagementService'
import { eSmsType, sendVerifyCode } from '@/service/VerificationService'
import set from '@/views/Auth/PwdSetting/index.vue'
export default defineComponent({ export default defineComponent({
components: { NavBar, Icon ,set}, components: { NavBar, Icon },
data(){
return{
role:''
}
},
computed: { computed: {
hasPassword(): eAccountType { hasPassword(): eAccountType {
return eAccountType.REG_PDSET return eAccountType.REG_NOPD
}, },
getPhone(){ getPhone(){
const phone =getUserMsg()?.userInfo.phone+'' const phone =getUserMsg()?.userInfo.phone+''
...@@ -74,16 +75,9 @@ export default defineComponent({ ...@@ -74,16 +75,9 @@ export default defineComponent({
}, },
methods:{ methods:{
pushRouter(){ pushRouter(){
console.log('123');
if(this.hasPassword == 3){
this.$router.push({ this.$router.push({
name: 'PwdSetting' name: 'PwdSetting'
}) })
}else if(this.hasPassword == 2){
this.$router.push({
name: 'PwdModify'
})
}
}, },
} }
}) })
......
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