调整整体色系

This commit is contained in:
liuxi 2025-02-25 15:37:17 +08:00
parent 3984fe0def
commit 504bc376af
4 changed files with 117 additions and 93 deletions

View File

@ -30,7 +30,7 @@
}
},
mounted() {
console.log(this.menu,'menu')
// console.log(this.menu,'menu')
},
methods: {
handleRoute(menu) {

View File

@ -142,9 +142,7 @@
</el-form-item>
<!-- 枚举备注: ALL :一次性全部回款 STAGES :全部分期 MIX :混合部分先还加分期 OTHER :其他 -->
<el-form-item v-if="repaymentObj.type == 'MIX'" label="分期前偿还金额" prop="partAmount"
:rules="[
{ required: true, validator: validatePass2, trigger: 'change'},
]">
>
<el-input class="inputpaddingtop2"
size="small"
placeholder="请输入分期前偿还金额"
@ -154,9 +152,7 @@
</el-input>
</el-form-item>
<el-form-item v-if="repaymentObj.type == 'MIX'" label="先还日期" prop="partDate"
:rules="[
{ required: true, message: '请选择分期前偿还日期', trigger: 'change',},
]">
>
<el-date-picker class="width100" size="small"
v-model="repaymentObj.partDate"
type="date"
@ -176,10 +172,7 @@
</el-input>
</el-form-item>
<el-form-item v-if="repaymentObj.type == 'STAGES' || repaymentObj.type == 'MIX'" label="分期期数" prop="stagesNum"
:rules="[
{ required: true, message: '请输入分期期数', trigger: 'change',},
{ pattern: /^[1-9]\d*$/, message: '只能输入正整数', trigger: ['blur', 'change']}
]">
>
<el-input
size="small"
placeholder="请输入分期期数"
@ -208,10 +201,7 @@
</el-select>
</el-form-item>
<el-form-item v-if="repaymentObj.type == 'ALL' || repaymentObj.type == 'STAGES' || repaymentObj.type == 'MIX'" label="还款截止日期" prop="paybackDate"
:rules="[
{ required: true, message: '请选择还款截止日期', trigger: 'change',},
{ required: true, validator: validatePass3, trigger: 'change',},
]">
>
<el-date-picker class="width100" size="small"
v-model="repaymentObj.paybackDate"
type="date"
@ -276,6 +266,9 @@ import api from "@/services/caseManagement";
{
callback(new Error('还款截止日期不能小于分期前偿还日期!'));
}
else{
callback();
}
} else {
callback();
}
@ -298,23 +291,23 @@ import api from "@/services/caseManagement";
{ pattern: /^[1-9]\d*(,\d{3})*(\.\d{1,2})?$|^0.\d{1,2}$/, message: '请输入2位小数金额', trigger: ['blur', 'change']}
],
// paybackDate: [
// { required: true, validator: validatePass3, trigger: 'change',},
// ],
// stagesDay: [
// { required: true, message: '', trigger: 'change',},
// ],
paybackDate: [
{ required: true, validator: validatePass3, trigger: 'change',},
],
stagesDay: [
{ required: true, message: '请选择每期还款日期', trigger: 'change',},
],
// partAmount: [
// { required: true, validator: validatePass2, trigger: 'change'},
// ],
// partDate: [
// { required: true, message: '', trigger: 'change',},
// ],
// stagesNum: [
// { required: true, message: '', trigger: 'change',},
// { pattern: /^[1-9]\d*$/, message: '', trigger: ['blur', 'change']}
// ],
partAmount: [
{ required: true, validator: validatePass2, trigger: 'change'},
],
partDate: [
{ required: true, message: '请选择分期前偿还日期', trigger: 'change',},
],
stagesNum: [
{ required: true, message: '请输入分期期数', trigger: 'change',},
{ pattern: /^[1-9]\d*$/, message: '只能输入正整数', trigger: ['blur', 'change']}
],
},
planList:[],
oldrepaymentObj:{},
@ -325,39 +318,9 @@ import api from "@/services/caseManagement";
this.getplanlist()
},
methods: {
validatePass2(rule, value, callback){
if (value === '') {
callback(new Error('请输入分期前偿还金额'));
} else if (!/^[1-9]\d*(,\d{3})*(\.\d{1,2})?$|^0.\d{1,2}$/.test(value)) {
callback(new Error('只能输入2位小数金额'));
} else if (value*1 > this.repaymentObj.totalAmount*1) {
callback(new Error('分期前偿还金额不能大于还款金额!'));
} else {
callback();
}
},
validatePass3 (rule, value, callback){
if (value === '') {
callback(new Error('请选择还款截止日期'));
} else if (this.repaymentObj.partDate != '' && this.repaymentObj.partDate != undefined) {
let date1 = new Date(value);//
let date2 = new Date(this.repaymentObj.partDate);//
let timestamp1 = date1.getTime();
let timestamp2 = date2.getTime();
if(timestamp2 > timestamp1)
{
callback(new Error('还款截止日期不能小于分期前偿还日期!'));
}
} else {
callback();
}
},
handleSubmitRepayment(){
console.log(1,'handleSubmitRepayment')
this.$refs.ruleFormRepayment.validate((valid) => {
this.$refs.ruleFormRepayment.validate((valid,obj) => {
if (valid){
console.log(2,'handleSubmitRepayment')
this.repaymentObj.caseId = this.eventDialog.caseId
api.getcase_payback_save(this.repaymentObj).then(res => {
if(!res.code){
@ -366,16 +329,17 @@ import api from "@/services/caseManagement";
}
})
}
else{
console.log(valid,'valid')
}
})
},
getplanlist(){
api.getcase_payback_planlist({caseId:this.eventDialog.caseId}).then(res => {
if(!res.code){
this.planList = res
if(this.planList.length > 0 ){this.repaymentObj = this.planList[0]}
if(this.planList.length > 0 )
{
this.repaymentObj = this.planList[0]
this.inputChange()
}
}
})
},
@ -394,6 +358,7 @@ import api from "@/services/caseManagement";
if(this.repaymentObj.totalAmount !='' &&this.repaymentObj.stagesNum !='' && this.repaymentObj.totalAmount !=undefined &&this.repaymentObj.stagesNum !=undefined)
{
this.repaymentObj.stagesAmount = ((this.repaymentObj.totalAmount*1 - this.repaymentObj.partAmount*1)/(this.repaymentObj.stagesNum*1)).toFixed(2)
this.repaymentObj.moneyAmount = (this.repaymentObj.totalAmount*1 - this.repaymentObj.partAmount*1).toFixed(2)
}
}
},
@ -424,3 +389,8 @@ import api from "@/services/caseManagement";
}
}
</style>
<style lang="scss">
.case-repayment-certificate{
.el-form-item__error{ padding-top:1px !important ;}
}
</style>

View File

@ -28,34 +28,42 @@
<span class="case-pro1">
<p>案件总量</p>
<p><a>{{caseprogressObj.caseTotal}}</a></p>
<img src="../../../assets/image/workbench/progress1.png">
</span>
<span class="case-pro2">
<p>已办结案件</p>
<p><a>{{caseprogressObj.finishTotal}}</a></p>
<img src="../../../assets/image/workbench/progress8.png">
</span>
<span class="case-pro3">
<p>未触达</p>
<p><a>{{caseprogressObj.notReachTotal}}</a></p>
<img src="../../../assets/image/workbench/progress3.png">
</span>
<span class="case-pro1">
<span class="case-pro4">
<p>调解中</p>
<p><a>{{caseprogressObj.mediatingTotal}}</a></p>
<img src="../../../assets/image/workbench/progress2.png">
</span>
<span class="case-pro2">
<span class="case-pro5">
<p>调解成功</p>
<p><a>{{caseprogressObj.mediateSuccess}}</a></p>
<img src="../../../assets/image/workbench/progress5.png">
</span>
<span class="case-pro3">
<span class="case-pro6">
<p>已签署协议</p>
<p><a>{{caseprogressObj.signTotal}}</a></p>
<img src="../../../assets/image/workbench/progress6.png">
</span>
<span class="case-pro1">
<span class="case-pro7">
<p>已司法确认</p>
<p><a>{{caseprogressObj.judicialTotal}}</a></p>
<img src="../../../assets/image/workbench/progress4.png">
</span>
<span class="case-pro2">
<span class="case-pro8">
<p>已赋强公证</p>
<p><a>{{caseprogressObj.notarizationTotal}}</a></p>
<img src="../../../assets/image/workbench/progress7.png">
</span>
</div>
</div>
@ -88,16 +96,16 @@
</div>
<div class="case-follow-cont flex-row ">
<div class="donotfollowup1">
<span class="flex-column cursor-pointer" @click="jumpUrl('/mediation-management')"><a class="f20 mb-32">今日待跟进案件</a><a class="f48">{{statisticCasesData.todayCasesToFollowUp == undefined ? 0 : statisticCasesData.todayCasesToFollowUp}}</a></span>
<span class="flex-column cursor-pointer" @click="jumpUrl('/mediation-management')"><a class="f20 mb-32">今日待跟进案件</a><a class="f48 color-165DFF">{{statisticCasesData.todayCasesToFollowUp == undefined ? 0 : statisticCasesData.todayCasesToFollowUp}}</a></span>
</div>
<div class="donotfollowup2">
<span class="flex-column cursor-pointer" @click="jumpUrl('/mediation-management')"><a class="f20 mb-32">超3天未跟进案件</a><a class="f48">{{statisticCasesData.overThreeDaysUnfollowedCases == undefined ? 0 : statisticCasesData.overThreeDaysUnfollowedCases}}</a></span>
<span class="flex-column cursor-pointer" @click="jumpUrl('/mediation-management')"><a class="f20 mb-32">超3天未跟进案件</a><a class="f48 color-165DFF">{{statisticCasesData.overThreeDaysUnfollowedCases == undefined ? 0 : statisticCasesData.overThreeDaysUnfollowedCases}}</a></span>
</div>
<div class="donotfollowup3">
<span class="flex-column cursor-pointer" @click="jumpUrl('/mediation-management')"><a class="f20 mb-32">超5天未跟进案件</a><a class="f48">{{statisticCasesData.overFiveDaysUnfollowedCases == undefined ? 0 : statisticCasesData.overFiveDaysUnfollowedCases}}</a></span>
<span class="flex-column cursor-pointer" @click="jumpUrl('/mediation-management')"><a class="f20 mb-32">超5天未跟进案件</a><a class="f48 color-165DFF">{{statisticCasesData.overFiveDaysUnfollowedCases == undefined ? 0 : statisticCasesData.overFiveDaysUnfollowedCases}}</a></span>
</div>
<div class="donotfollowup4">
<span class="flex-column cursor-pointer" @click="jumpUrl('/mediation-management')"><a class="f20 mb-32">新案未跟进案件</a><a class="f48">{{statisticCasesData.newUnfollowedCases == undefined ? 0 : statisticCasesData.newUnfollowedCases}}</a></span>
<span class="flex-column cursor-pointer" @click="jumpUrl('/mediation-management')"><a class="f20 mb-32">新案未跟进案件</a><a class="f48 color-165DFF">{{statisticCasesData.newUnfollowedCases == undefined ? 0 : statisticCasesData.newUnfollowedCases}}</a></span>
</div>
</div>
</div>
@ -399,8 +407,8 @@
show: false
},
data: [
{ value: this.mediation_success_rate.mediateFail, name: '调解失败',itemStyle:{color:'#FFE7E0'} },
{ value: this.mediation_success_rate.mediateSuccess, name: '调解成功' ,itemStyle:{color:'#E4F3CE'}},
{ value: this.mediation_success_rate.mediateFail, name: '调解失败',itemStyle:{color:'#a7e054'} },
{ value: this.mediation_success_rate.mediateSuccess, name: '调解成功' ,itemStyle:{color:'#bee18adb'}},
]
}
]
@ -453,8 +461,8 @@
show: false
},
data: [
{ value: 0, name: '未触达债务人数',itemStyle:{color:'#E1EDF4'} },
{ value: 0, name: '已触达债务人数' ,itemStyle:{color:'#E4F3CE'}},
{ value: 0, name: '未触达债务人数',itemStyle:{color:'#c0def0'} },
{ value: 0, name: '已触达债务人数' ,itemStyle:{color:'#cdeaa2'}},
]
}
]
@ -533,7 +541,7 @@
background:url(../../../assets/image/workbench/work-left-bg.png) no-repeat;
background-size: 100% 100%;
// min-height:496px;
width: 400px;
width: 412px;
padding: 20px;
.case-title{
height: 60px;
@ -545,13 +553,14 @@
.case-progress-cont{
background-color: #fff;
border-radius: 5px;
font-size: 18px;
}
.case-progress{
background:url(../../../assets/image/workbench/icon-bg.png) no-repeat;
// background:url(../../../assets/image/workbench/icon-bg.png) no-repeat;
background-size: 100% 100%;
height: 460px;
margin: auto;
color: #4E5969;
color: #fff;
span{
padding: 15px 0 0px 15px;
width: 153px;
@ -564,12 +573,56 @@
margin-left: 20px;
}
span p{padding: 0;margin: 0;}
span a{color: #1D2129;font-size: 22px;}
span a{color: #fff;font-size: 22px;}
.case-pro1,.case-pro2,.case-pro3,.case-pro4,.case-pro5,.case-pro6,
.case-pro7,.case-pro8
{
width: 157px;height: 105px;
position: relative;
border-radius: 8px;
img{
width:50px ;
right:10px;
position:absolute;
}
}
.case-pro1
{
background-color: #0fdfdc;
}
.case-pro2
{
background-color: #ffd900;
}
.case-pro3
{
background-color: #59a8ff;
}
.case-pro4
{
background-color: #ff87b1;
}
.case-pro5
{
background-color: #978bff;
}
.case-pro6
{
background-color: #ffb048;
}
.case-pro7
{
background-color: #df5965;
}
.case-pro8
{
background-color: #d69a5e;
}
}
.case-pro1{width: 155px;height: 105px;}
}
.casework-1{
background-color: #fff;
background-color: #ec9dd82b;
border-radius: 8px;
margin-top: 15px;
@ -603,7 +656,7 @@
}
.casework2{
width: calc(100% - 830px);
width: calc(100% - 850px);
.casework2-1{
background-color: #E1EDF4;
min-height:496px;
@ -681,7 +734,7 @@
}
.casework2-2{
background-color: #fff;
background-color: #e2eb5321;
border-radius: 8px;
margin-top: 15px;
}
@ -694,7 +747,7 @@
.pie-chart{
margin-top: 18px;
padding: 18px;
background-color: #fff;
background-color: #ef806d42;
border-radius: 8px;
.case-pk-title{
@ -725,8 +778,8 @@
}
.item-trace{
padding: 18px;
background-color: #fff;
padding: 14px 18px;
background-color: #d1f1dc4f;
border-radius: 8px;
.case-pk-title{
span:first-child{
@ -737,7 +790,7 @@
}
.case-pk-cont{
padding: 21px 0 0px 0;
padding: 20px 0 0px 0;
position: relative;
.resultplan{
font-size: 32px;
@ -764,6 +817,7 @@
a:first-child{
color: #E8535A;
}
span i{color: red;}
}
}
}

View File

@ -494,8 +494,8 @@
show: false
},
data: [
{ value: this.mediation_success_rate.mediateFail, name: '调解失败',itemStyle:{color:'#FFE7E0'} },
{ value: this.mediation_success_rate.mediateSuccess, name: '调解成功' ,itemStyle:{color:'#E4F3CE'}},
{ value: this.mediation_success_rate.mediateFail, name: '调解失败',itemStyle:{color:'#a7e054'} },
{ value: this.mediation_success_rate.mediateSuccess, name: '调解成功' ,itemStyle:{color:'#bee18adb'}},
]
}
]