Commit cb038b2e authored by 沈翠玲's avatar 沈翠玲

业务审批

parent 9257b031
......@@ -262,6 +262,8 @@
import { saveTrackRecord } from '@/api/property';
import { auditAudit } from '@/api/audit';
import { useDict } from '@/hooks/useDict';
import { useAuthStore } from '@/stores/modules/auth';
const { authButtonListGet } = useAuthStore(); // 获取用户权限列表
const { PhoneResultStatus, ReduceType, FlowStatus, FollowStatus, AuditStatus, CaseStatus } = useDict("PhoneResultStatus","ReduceType", "FlowStatus", "FollowStatus","AuditStatus", "CaseStatus");
const envs = getAppEnvConfig();
const downloadfile = inject('download');
......@@ -429,6 +431,7 @@
{
field: 'mergerCase',
title: '是否共案处理',
visible: authButtonListGet.includes('allcation_for_tenant'),
showOverflow: 'tooltip',
width: 120,
slots: {
......
......@@ -271,6 +271,7 @@
import { getAppEnvConfig } from '@/utils/env';
import Decimal from 'decimal.js';
import { useDict } from '@/hooks/useDict';
import { useAuthStore } from '@/stores/modules/auth';
import { inject } from 'vue';
const { PhoneResultStatus, RepayStatus, FlowStatus, FollowStatus, AuditStatus, CaseStatus } = useDict("PhoneResultStatus","RepayStatus", "FlowStatus", "FollowStatus","AuditStatus", "CaseStatus");
const envs = getAppEnvConfig();
......@@ -285,6 +286,7 @@
const dialogVisible = ref(false);
const downloadfile = inject('download');
import { useUserStore } from '@/stores/modules/user';
const { authButtonListGet } = useAuthStore(); // 获取用户权限列表
const userStore = useUserStore();
......@@ -506,6 +508,7 @@
{
field: 'mergerCase',
title: '是否共案处理',
visible: authButtonListGet.includes('allcation_for_tenant'),
showOverflow: 'tooltip',
width: 120,
slots: {
......@@ -516,6 +519,7 @@
},
{
field: 'canStages',
visible: authButtonListGet.includes('allcation_for_tenant'),
title: '分期是否可修改',
showOverflow: 'tooltip',
width: 120,
......
......@@ -205,6 +205,7 @@
import {
listByBorrower
} from '@/api/property';
import { useAuthStore } from '@/stores/modules/auth';
import { onMounted } from 'vue';
import { watch } from 'vue';
import Decimal from 'decimal.js';
......@@ -212,6 +213,7 @@
import { useDict } from '@/hooks/useDict';
import { inject } from 'vue';
import { useUserStore } from '@/stores/modules/user';
const { authButtonListGet } = useAuthStore(); // 获取用户权限列表
const userStore = useUserStore();
......@@ -348,6 +350,7 @@
{
field: 'mergerCase',
title: '是否共案处理',
visible: authButtonListGet.includes('allcation_for_tenant'),
showOverflow: 'tooltip',
width: 120,
slots: {
......
......@@ -256,6 +256,8 @@
import dayjs from 'dayjs';
import { computed, inject } from 'vue';
import { reactive, ref } from 'vue';
import { useAuthStore } from '@/stores/modules/auth';
const { authButtonListGet } = useAuthStore(); // 获取用户权限列表
import { ElInputNumber, ElMessage,ElTag } from 'element-plus';
import { Upload, Download } from '@element-plus/icons-vue';
import { getAppEnvConfig } from '@/utils/env';
......@@ -430,6 +432,7 @@
field: 'mergerCase',
title: '是否共案处理',
showOverflow: 'tooltip',
visible: authButtonListGet.includes('allcation_for_tenant'),
width: 120,
slots: {
default: ({ row }) => {
......
......@@ -243,6 +243,8 @@
import { getAppEnvConfig } from '@/utils/env';
import { saveTrackRecord } from '@/api/property';
import { useDict } from '@/hooks/useDict';
import { useAuthStore } from '@/stores/modules/auth';
const { authButtonListGet } = useAuthStore(); // 获取用户权限列表
const { PhoneResultStatus, ReduceType, FlowStatus, FollowStatus, AuditStatus, CaseStatus } = useDict("PhoneResultStatus","ReduceType", "FlowStatus", "FollowStatus","AuditStatus", "CaseStatus");
const envs = getAppEnvConfig();
const url = envs.VITE_GLOB_API_URL_PREFIX + '/sys/upload';
......@@ -426,6 +428,7 @@
{
field: 'mergerCase',
title: '是否共案处理',
visible: authButtonListGet.includes('allcation_for_tenant'),
showOverflow: 'tooltip',
width: 120,
slots: {
......
......@@ -159,6 +159,7 @@
import { getAppEnvConfig } from '@/utils/env';
import { useDict } from '@/hooks/useDict';
import { useUserStore } from '@/stores/modules/user';
import { useAuthStore } from '@/stores/modules/auth';
import { inject } from 'vue';
const envs = getAppEnvConfig();
const userStore = useUserStore();
......@@ -166,6 +167,7 @@
const emits = defineEmits(['success']);
const url = envs.VITE_GLOB_API_URL_PREFIX + '/sys/upload';
const showModal = ref(false);
const { authButtonListGet } = useAuthStore(); // 获取用户权限列表
const tabledata = ref([]);
const ProTableRef = ref();
const mypictureRef = ref();
......@@ -297,6 +299,7 @@
{
field: 'mergerCase',
title: '是否共案处理',
visible: authButtonListGet.includes('allcation_for_tenant'),
showOverflow: 'tooltip',
width: 120,
slots: {
......
......@@ -185,11 +185,13 @@
import { Download, ZoomIn, Delete } from '@element-plus/icons-vue';
import Decimal from 'decimal.js';
import { useDict } from '@/hooks/useDict';
import { useAuthStore } from '@/stores/modules/auth';
import { inject } from 'vue';
import { useUserStore } from '@/stores/modules/user';
const userStore = useUserStore();
const { PhoneResultStatus, RepayStatus, FlowStatus, FollowStatus, AuditStatus, CaseStatus } = useDict("PhoneResultStatus","RepayStatus", "FlowStatus", "FollowStatus","AuditStatus", "CaseStatus");
const envs = getAppEnvConfig();
const { authButtonListGet } = useAuthStore(); // 获取用户权限列表
const url = envs.VITE_GLOB_API_URL_PREFIX + '/sys/upload';
const ProTableRef = ref();
......@@ -406,6 +408,7 @@
{
field: 'mergerCase',
title: '是否共案处理',
visible: authButtonListGet.includes('allcation_for_tenant'),
showOverflow: 'tooltip',
width: 100,
slots: {
......@@ -418,6 +421,7 @@
field: 'canStages',
title: '分期是否可修改',
showOverflow: 'tooltip',
visible: authButtonListGet.includes('allcation_for_tenant'),
width: 100,
slots: {
default: ({ row }) => {
......
......@@ -9,8 +9,8 @@
<!-- <el-button type="primary" @click="repair"
v-permission="'repair_apply'"
>修复申请</el-button> -->
<el-button type="primary" @click="reduce">减免申请</el-button>
<el-button type="primary" @click="split">分期申请</el-button>
<el-button type="primary" @click="reduce" :disabled="detail && detail.repayStatus && detail.repayStatus === 'over'">减免申请</el-button>
<el-button type="primary" @click="split" :disabled="detail && detail.repayStatus && detail.repayStatus === 'over'">分期申请</el-button>
</div>
<div class="detail-steps" style="display: none">
<el-steps :active="activeStep">
......@@ -558,7 +558,7 @@
<script setup lang="jsx" name="caseDetail">
import { useRoute } from 'vue-router';
import { reactive, ref, onBeforeMount, onMounted, nextTick } from 'vue';
import { ElButton, ElTag } from 'element-plus';
import { ElButton, ElTag, ElMessage } from 'element-plus';
import repairModal from './components/repairModal.vue';
import returnModal from './components/returnModal.vue';
import reduceDrawer from './components/reduceDrawer.vue';
......@@ -907,6 +907,12 @@
repairModalRef.value.openModal(JSON.parse(JSON.stringify(detail.value)));
};
const reduce = () => {
if(!recordData.value || recordData.value.length === 0) {
return ElMessage.warning({
message: '要先跟进后才可以申请减免',
plain: true,
});
}
reduceDrawerRef.value.openModal(
JSON.parse(JSON.stringify(detail.value)),
JSON.parse(JSON.stringify(caseDetailConfig.data))
......@@ -996,7 +1002,7 @@
default: ({ row, rowIndex }) => {
return (
<>
<ElButton type="primary" onClick={() => returnCrash(row, '直接还款')}>
<ElButton type="primary" onClick={() => returnCrash(row, '直接还款')} disabled={row.repayStatus == 'over'}>
还款
</ElButton>
</>
......@@ -1158,7 +1164,7 @@
<ElButton
type="primary"
onClick={() => returnCrash(row, '分期还款')}
disabled={row.repayStatus === 'over' || splitCurrent.value.flowStatus !== 'pass'}
disabled={row.repayStatus === 'over' || splitCurrent.value.flowStatus !== 'pass' || (detail.value.repayStatus && detail.value.repayStatus === 'over')}
>
还款
</ElButton>
......@@ -1318,7 +1324,7 @@
<ElButton
type="primary"
onClick={() => returnCrash(row, '结清减免还款')}
disabled={row.repayStatus === 'over' || row.flowStatus !== 'pass'}
disabled={row.repayStatus === 'over' || row.flowStatus !== 'pass' ||(detail.value.repayStatus && detail.value.repayStatus === 'over')}
>
还款
</ElButton>
......
......@@ -271,6 +271,9 @@
const loadProgress = ref(0);
const dialogImageUrl = ref('');
const dialogVisible = ref(false);
import { useAuthStore } from '@/stores/modules/auth';
const { authButtonListGet } = useAuthStore(); // 获取用户权限列表
import { useDict } from '@/hooks/useDict';
const { PhoneResultStatus, ReduceType, FlowStatus, FollowStatus, AuditStatus, CaseStatus } = useDict("PhoneResultStatus","ReduceType", "FlowStatus", "FollowStatus","AuditStatus", "CaseStatus");
const props = defineProps({
......@@ -436,6 +439,7 @@
{
field: 'mergerCase',
title: '是否共案处理',
visible: authButtonListGet.includes('allcation_for_tenant'),
showOverflow: 'tooltip',
width: 120,
slots: {
......
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