Merge branch 'dev' of http://git.sinoecare.com/sinoecare/digital_village_v2/dvcp_v2_webapp into dev
This commit is contained in:
@@ -128,7 +128,7 @@
|
||||
<el-input v-model="table.name" placeholder="请输入股权人姓名" clearable/>
|
||||
</el-form-item>
|
||||
<el-form-item label="身份证号" prop="idNumber">
|
||||
<el-input v-model="table.idNumber" placeholder="请输入身份证号" clearable/>
|
||||
<el-input v-model="table.idNumber" placeholder="请输入身份证号" clearable maxlength="18"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="与户主关系" prop="householdRelation">
|
||||
<ai-select v-model="table.householdRelation" placeholder="请选择" :selectList="$dict.getDict('householdRelation')" />
|
||||
@@ -197,7 +197,8 @@ export default {
|
||||
dialogRules() {
|
||||
return {
|
||||
name: [{required: true, message: '请输入股权人姓名', trigger: 'blur'}],
|
||||
idNumber: [{required: true, message: '请输入身份证号', trigger: 'blur'}],
|
||||
idNumber: [{required: true, message: '请输入18位身份证号', trigger: 'blur'},
|
||||
{min: 18, message: '请输入18位身份证号', trigger: 'blur'}],
|
||||
householdRelation: [{required: true, message: '请选择与户主关系', trigger: 'blur'}],
|
||||
shareholdingNumber: [{required: true, message: '请输入持股数量', trigger: 'blur'}],
|
||||
}
|
||||
@@ -233,9 +234,8 @@ export default {
|
||||
this.form = JSON.parse(JSON.stringify(this.data))
|
||||
},
|
||||
deleteBtn(row, index) {
|
||||
console.log(row);
|
||||
if(row.householdRelation == 11) {
|
||||
return '不可以删除户主'
|
||||
return this.$message.error('不可以删除户主')
|
||||
}
|
||||
this.tableData.splice(index, 1)
|
||||
},
|
||||
|
||||
@@ -39,7 +39,7 @@
|
||||
<el-row type="flex">
|
||||
<el-col :span="20">
|
||||
<el-form-item label="身份证号" prop="idNumber">
|
||||
<el-input v-model="form.idNumber" placeholder="请输入使用人身份证号"></el-input>
|
||||
<el-input v-model="form.idNumber" placeholder="请输入使用人身份证号" maxlength="18"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="20">
|
||||
@@ -146,7 +146,8 @@ export default {
|
||||
usePerson: [{required: true, message: '请输入使用人', trigger: 'blur'}],
|
||||
houseNumber: [{required: true, message: '请输入家庭人口', trigger: 'blur'},
|
||||
{pattern: /^[1-9]\d*$/, message: '请输入正整数',trigger: 'blur'}],
|
||||
idNumber: [{required: true, message: '请输入身份证号', trigger: 'blur'}],
|
||||
idNumber: [{required: true, message: '请输入18位身份证号', trigger: 'blur'},
|
||||
{min: 18, message: '请输入18位身份证号', trigger: 'blur'}],
|
||||
landOwnership: [{required: true, message: '请输入土地所有权', trigger: 'blur'}],
|
||||
landArea: [{required: true, message: '请输入土地面积', trigger: 'blur'}],
|
||||
landFourTo: [{required: true, message: '请输入土地四至', trigger: 'blur'}],
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
</el-col>
|
||||
<el-col :span="20">
|
||||
<el-form-item label="土地流出方证件号码" prop="landOutflowNumber">
|
||||
<el-input v-model="form.landOutflowNumber" placeholder="请输入土地流出方证件号码"></el-input>
|
||||
<el-input v-model="form.landOutflowNumber" placeholder="请输入土地流出方证件号码" maxlength="18"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@@ -32,7 +32,7 @@
|
||||
</el-col>
|
||||
<el-col :span="20">
|
||||
<el-form-item label="土地承接方证件号码" prop="landUndertakeNumber">
|
||||
<el-input v-model="form.landUndertakeNumber" placeholder="请输入土地承接方证件号码"></el-input>
|
||||
<el-input v-model="form.landUndertakeNumber" placeholder="请输入土地承接方证件号码" maxlength="18"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@@ -183,9 +183,11 @@ export default {
|
||||
rules() {
|
||||
return {
|
||||
landOutflowName: [{required: true, message: "请输入土地流出方名称", trigger: "blur"}],
|
||||
landOutflowNumber: [{required: true, message: "请输入土地流出方证件号码", trigger: "blur"}],
|
||||
landOutflowNumber: [{required: true, message: "请输入土地流出方证件号码", trigger: "blur"},
|
||||
{min: 18, message: "请输入18位土地流出方证件号码", trigger: "blur"}],
|
||||
landUndertakeName: [{required: true, message: "请输入土地承接方名称", trigger: "blur"}],
|
||||
landUndertakeNumber: [{required: true, message: "请输入土地承接方证件号码", trigger: "blur"}],
|
||||
landUndertakeNumber: [{required: true, message: "请输入土地承接方证件号码", trigger: "blur"},
|
||||
{min: 18, message: "请输入18位土地承接方证件号码", trigger: "blur"}],
|
||||
contractNo: [{required: true, message: "请输入合同编号", trigger: "blur"}],
|
||||
circulateType: [{required: true, message: "请选择流转形式", trigger: "blur"}],
|
||||
landArea: [{required: true, message: "请输入土地面积", trigger: "blur"}],
|
||||
|
||||
@@ -91,5 +91,6 @@ export default {
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.pumList {
|
||||
height: 100%;
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -85,5 +85,6 @@ export default {
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.pumList {
|
||||
height: 100%;
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -97,8 +97,7 @@
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="店铺照片" prop="shopPhoto">
|
||||
<ai-uploader :value="[{url:dialogInfo.shopPhoto}]" :instance="instance" :limit="1"
|
||||
@change="handleShopPhoto" isShowTip/>
|
||||
<ai-uploader v-model="dialogInfo.shopPhoto" :instance="instance" :limit="1" isShowTip valueIsUrl/>
|
||||
</el-form-item>
|
||||
<el-form-item label="状态" prop="status">
|
||||
<el-radio-group v-model="dialogInfo.status">
|
||||
@@ -142,45 +141,6 @@ export default {
|
||||
},
|
||||
unitId: "",
|
||||
total: 10,
|
||||
colConfigs: [
|
||||
{prop: "shopName", label: "店铺名称", align: "left"},
|
||||
{
|
||||
prop: "shopkeeper",
|
||||
label: "店主",
|
||||
align: "center",
|
||||
},
|
||||
{
|
||||
prop: "phone",
|
||||
label: "联系电话",
|
||||
align: "center",
|
||||
},
|
||||
{
|
||||
prop: "shopAddress",
|
||||
label: "店铺地址",
|
||||
align: "left",
|
||||
width: 280,
|
||||
},
|
||||
{
|
||||
prop: "names",
|
||||
label: "店铺操作员",
|
||||
align: "left",
|
||||
},
|
||||
{
|
||||
prop: "status",
|
||||
label: "状态",
|
||||
align: "center",
|
||||
render: (h, params) => {
|
||||
return h(
|
||||
"span",
|
||||
{
|
||||
class: "status-" + params.row.status,
|
||||
},
|
||||
this.$dict.getLabel("assessmentStartStatus", params.row.status)
|
||||
);
|
||||
},
|
||||
},
|
||||
{slot: "options", label: "操作", align: "center"},
|
||||
],
|
||||
tableData: [],
|
||||
dialog: {
|
||||
title: "",
|
||||
@@ -204,12 +164,11 @@ export default {
|
||||
{required: true, message: "请输入店主", trigger: "blur"},
|
||||
],
|
||||
phone: [{required: true, message: "请输入联系电话", trigger: "blur"}],
|
||||
shopAddress: [
|
||||
{required: true, message: "请输入店铺地址", trigger: "blur"},
|
||||
],
|
||||
shopAddress: [{required: true, message: "请输入店铺地址", trigger: "blur"}],
|
||||
status: [{required: true, message: "请选择状态", trigger: "blur"}],
|
||||
areaId: [
|
||||
{required: true, message: "请选择事件区域", trigger: "blur"},
|
||||
{required: true, message: "请选择所在区域"},
|
||||
{pattern: /[^0]0{0,2}$/, message: '请选择到村/社区'}
|
||||
],
|
||||
operators: [
|
||||
{required: true, message: "请选择操作员", trigger: "blur"},
|
||||
@@ -227,6 +186,22 @@ export default {
|
||||
...mapState(["user"]),
|
||||
rootArea() {
|
||||
return this.user.info.areaId?.replace(/(\d{6}).+/, '$1' + Array(7).join("0"))
|
||||
},
|
||||
colConfigs() {
|
||||
return [
|
||||
{prop: "shopName", label: "店铺名称", align: "left"},
|
||||
{prop: "shopkeeper", label: "店主", align: "center"},
|
||||
{prop: "phone", label: "联系电话", align: "center"},
|
||||
{prop: "areaName", label: "所在地区"},
|
||||
{prop: "shopAddress", label: "店铺地址", align: "left", width: 280},
|
||||
{prop: "names", label: "店铺操作员", align: "left"},
|
||||
{
|
||||
label: "状态",
|
||||
align: "center",
|
||||
render: (h, params) => h("span", {class: "status-" + params.row.status,}, this.$dict.getLabel("assessmentStartStatus", params.row.status))
|
||||
},
|
||||
{slot: "options", label: "操作", align: "center"},
|
||||
]
|
||||
}
|
||||
},
|
||||
|
||||
@@ -341,9 +316,6 @@ export default {
|
||||
this.dialogInfo.operators = [];
|
||||
this.dialog.visible = true;
|
||||
},
|
||||
handleShopPhoto(v) {
|
||||
this.dialogInfo.shopPhoto = v?.[0]?.url || ""
|
||||
}
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
@@ -49,8 +49,7 @@
|
||||
</el-form-item>
|
||||
</el-row>
|
||||
<el-form-item label="企业微信二维码" prop="qrCodeUrl">
|
||||
<ai-uploader :value="[{url:form.qrCodeUrl}]" @change="handleQrCodeUrl" :instance="instance" :limit="1"
|
||||
isShowTip/>
|
||||
<ai-uploader v-model="form.qrCodeUrl" :instance="instance" :limit="1" isShowTip valueIsUrl/>
|
||||
</el-form-item>
|
||||
</template>
|
||||
</ai-card>
|
||||
@@ -172,9 +171,6 @@ export default {
|
||||
back() {
|
||||
this.$router.push({})
|
||||
},
|
||||
handleQrCodeUrl(v) {
|
||||
this.form.qrCodeUrl = v?.[0]?.url || ""
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.getDetail()
|
||||
|
||||
@@ -30,9 +30,15 @@
|
||||
<el-link type="primary" @click="isShow=true">企业详情</el-link>
|
||||
</el-row>
|
||||
</el-form-item>
|
||||
<el-form-item label="所在地区">{{ detail.areaName }}</el-form-item>
|
||||
<el-form-item label="资金用途">{{ dict.getLabel('financialFundPurpose', detail.fundPurpose) }}
|
||||
</el-form-item>
|
||||
<el-form-item label="联系人">{{ detail.name }}</el-form-item>
|
||||
<el-form-item label="联系人">
|
||||
<el-row type="flex">
|
||||
{{ detail.name }}
|
||||
<person-credit-report :person="detail" :instance="instance" :dict="dict"/>
|
||||
</el-row>
|
||||
</el-form-item>
|
||||
<el-form-item label="身份证号">{{ detail.idNumber }}</el-form-item>
|
||||
<el-form-item label="联系方式">{{ detail.phone }}</el-form-item>
|
||||
<el-form-item label="申请时间">{{ detail.createTime }}</el-form-item>
|
||||
@@ -94,16 +100,24 @@
|
||||
<el-button @click="isShow=false">关闭</el-button>
|
||||
</template>
|
||||
</ai-dialog>
|
||||
<ai-dialog class="dialog" :title="detail.enterpriseName||'企业详情'" :visible.sync="isShow" width="1200px" customFooter>
|
||||
<enterprise-dialog v-if="detail.enterpriseId" :enterprise-id="detail.enterpriseId" :instance="instance"
|
||||
:dict="dict"/>
|
||||
<template #footer>
|
||||
<el-button @click="isShow=false">关闭</el-button>
|
||||
</template>
|
||||
</ai-dialog>
|
||||
</section>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {mapState} from "vuex";
|
||||
import EnterpriseDialog from "../../../components/enterpriseDialog";
|
||||
import PersonCreditReport from "../../../components/personCreditReport";
|
||||
|
||||
export default {
|
||||
name: "loanDetail",
|
||||
components: {EnterpriseDialog},
|
||||
components: {PersonCreditReport, EnterpriseDialog},
|
||||
props: {
|
||||
instance: Function,
|
||||
dict: Object,
|
||||
@@ -133,7 +147,8 @@ export default {
|
||||
loanDate: [{required: true, message: "请选择 放款日期"}],
|
||||
auditDescription: [{required: true, message: "请输入 审批意见"}],
|
||||
},
|
||||
isShow: false
|
||||
isShow: false,
|
||||
personCR: false
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
|
||||
@@ -50,33 +50,6 @@
|
||||
<ai-echart :ops="columnEchart" id="columnChart" :data="productTop10"/>
|
||||
</template>
|
||||
</ai-card>
|
||||
<ai-card title="交易记录">
|
||||
<template #content>
|
||||
<ai-search-bar>
|
||||
<template #left>
|
||||
<ai-select v-model="search.organizationType" placeholder="机构类型" clearable
|
||||
:selectList="dict.getDict('financialOrganizationType')" @change="page.current=1,getTableData()"/>
|
||||
<ai-search label="申请时间">
|
||||
<el-date-picker size="small" placeholder="请选择" type="daterange"
|
||||
start-placeholder="开始日期"
|
||||
end-placeholder="结束日期" v-model="search.applyTime"
|
||||
:default-time="['00:00:00','23:59:59']" value-format="yyyy-MM-dd"
|
||||
@change="handleSearchTime"/>
|
||||
</ai-search>
|
||||
</template>
|
||||
<template #right>
|
||||
<el-input size="small" placeholder="搜索产品名称、身份证、企业、贷款机构" v-model="search.enterpriseName" clearable
|
||||
@change="page.current=1,getTableData()"/>
|
||||
<ai-download :instance="instance" url="/app/appfinancialloanapply/export" :params="search"
|
||||
fileName="交易记录">
|
||||
<el-button icon="iconfont iconExported">导出</el-button>
|
||||
</ai-download>
|
||||
</template>
|
||||
</ai-search-bar>
|
||||
<ai-table :tableData="tableData" :total="page.total" :current.sync="page.current" :size.sync="page.size"
|
||||
@getTableData="getTableData" :col-configs="colConfigs" :dict="dict"/>
|
||||
</template>
|
||||
</ai-card>
|
||||
</section>
|
||||
</template>
|
||||
|
||||
@@ -92,8 +65,8 @@ export default {
|
||||
},
|
||||
computed: {
|
||||
...mapState(['user']),
|
||||
financeOrgId(){
|
||||
return this.user.financeUser?.organizationId||""
|
||||
financeOrgId() {
|
||||
return this.user.financeUser?.organizationId || ""
|
||||
},
|
||||
circleEchart() {
|
||||
return {
|
||||
@@ -194,42 +167,17 @@ export default {
|
||||
data() {
|
||||
return {
|
||||
search: {status: 1},
|
||||
page: {current: 1, size: 10,total:0},
|
||||
tableData: [],
|
||||
overviews: [],
|
||||
productTop10: [],
|
||||
tradeTrend: [],
|
||||
colConfigs: [
|
||||
{label: "产品名称", width: '200', prop: "productName"},
|
||||
{label: "联系人", width: '100', prop: "name"},
|
||||
{label: "联系方式", width: '140', prop: "phone"},
|
||||
{label: "身份证号", render: (h, {row}) => h('p', this.idCardNoUtil.hideId(row.idNumber)), width: 160},
|
||||
{label: "企业主体", width: '200', prop: "enterpriseName"},
|
||||
{label: "贷款金额(万)", width: '120', prop: "loanAmount"},
|
||||
{label: "申请时间", prop: "createTime", width: 160},
|
||||
{label: "贷款机构", prop: "organizationName"},
|
||||
{label: "机构类型", prop: "organizationType", dict: "financialOrganizationType"},
|
||||
{label: "状态", prop: "status", dict: "financialLoanApplyStatus"},
|
||||
]
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
getStaData() {
|
||||
this.getTableData()
|
||||
this.getOverviews()
|
||||
this.getProductTop10()
|
||||
this.getTradeTrend()
|
||||
},
|
||||
getTableData() {
|
||||
this.instance.post("/appfinancialloanapply/list", null, {
|
||||
params: {...this.page, ...this.search}
|
||||
}).then(res => {
|
||||
if (res?.data) {
|
||||
this.tableData = res.data?.records
|
||||
this.page.total = res.data.total
|
||||
}
|
||||
})
|
||||
},
|
||||
getOverviews() {
|
||||
let {organizationId} = this.search
|
||||
this.instance.post("/appfinancialloanapply/staticFinancialLoanApplyByOrganization", null, {
|
||||
@@ -260,12 +208,6 @@ export default {
|
||||
}
|
||||
})
|
||||
},
|
||||
handleSearchTime(v) {
|
||||
this.page.current = 1
|
||||
this.search.applyStartDate = v?.[0].substring(0, 10)
|
||||
this.search.applyEndDate = v?.[1].substring(0, 10)
|
||||
this.getTableData()
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.getStaData()
|
||||
@@ -275,8 +217,6 @@ export default {
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.loanSta {
|
||||
height: 100%;
|
||||
overflow-y: auto;
|
||||
|
||||
.col-row {
|
||||
overflow: hidden;
|
||||
@@ -288,7 +228,7 @@ export default {
|
||||
float: left;
|
||||
margin: 0 20px 20px 0;
|
||||
background: #FFF;
|
||||
box-shadow: 0px 4px 6px -2px rgba(15, 15, 21, 0.15);
|
||||
box-shadow: 0 4px 6px -2px rgba(15, 15, 21, 0.15);
|
||||
border-radius: 4px;
|
||||
box-sizing: border-box;
|
||||
|
||||
@@ -346,6 +286,10 @@ export default {
|
||||
transform: translate(-50%, -50%);
|
||||
width: 100px;
|
||||
text-align: center;
|
||||
|
||||
& > p {
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -79,5 +79,6 @@ export default {
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.needsList {
|
||||
height: 100%;
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -23,13 +23,17 @@
|
||||
</el-form-item>
|
||||
<el-form-item label="企业主体" v-if="detail.applyType==1">
|
||||
{{ detail.enterpriseName }}
|
||||
<el-link type="primary"
|
||||
@click="showEnterpriseDetail=true">
|
||||
<el-link type="primary" @click="showEnterpriseDetail=true">
|
||||
企业详情
|
||||
</el-link>
|
||||
</el-form-item>
|
||||
<el-form-item v-else/>
|
||||
<el-form-item label="联系人">{{ detail.createUserName }}</el-form-item>
|
||||
<el-form-item label="联系人">
|
||||
<el-row type="flex">
|
||||
{{ detail.createUserName }}
|
||||
<person-credit-report :person="detail" :instance="instance" :dict="dict"/>
|
||||
</el-row>
|
||||
</el-form-item>
|
||||
<el-form-item label="所在地区">{{ detail.areaName }}</el-form-item>
|
||||
<el-form-item label="联系方式">{{ detail.phone }}</el-form-item>
|
||||
<el-form-item label="身份证号">{{ detail.idNumber }}</el-form-item>
|
||||
@@ -85,10 +89,11 @@
|
||||
<script>
|
||||
import {mapState} from "vuex";
|
||||
import EnterpriseDialog from "../../../components/enterpriseDialog";
|
||||
import PersonCreditReport from "../../../components/personCreditReport";
|
||||
|
||||
export default {
|
||||
name: "grabDetail",
|
||||
components: {EnterpriseDialog},
|
||||
components: {PersonCreditReport, EnterpriseDialog},
|
||||
props: {
|
||||
instance: Function,
|
||||
dict: Object,
|
||||
|
||||
@@ -52,39 +52,39 @@
|
||||
</p>
|
||||
<div id="columnChart"></div>
|
||||
</div>
|
||||
<div class="table-content chart-content">
|
||||
<div class="title">交易记录</div>
|
||||
<ai-search-bar style="padding:20px 20px 0 20px;">
|
||||
<template #left>
|
||||
<ai-select v-model="search.status" placeholder="状态" clearable
|
||||
:selectList="dict.getDict('financingDemandStatus')" @change="getList()"></ai-select>
|
||||
<ai-search label="申请时间">
|
||||
<el-date-picker size="small" placeholder="请选择" type="daterange"
|
||||
start-placeholder="开始日期"
|
||||
end-placeholder="结束日期"
|
||||
style="width: 258px;"
|
||||
value-format="yyyy-MM-dd"
|
||||
v-model="stuTime"
|
||||
@change="changeTime"/>
|
||||
</ai-search>
|
||||
</template>
|
||||
<template #right>
|
||||
<el-input size="small" placeholder="联系人/身份证号/企业主体/贷款银行" v-model="search.name" clearable @change="getList()"/>
|
||||
<ai-download :instance="instance" url="appfinancingdemand/export" :params="search"
|
||||
fileName="交易记录">
|
||||
<el-button icon="iconfont iconExported">导出</el-button>
|
||||
</ai-download>
|
||||
</template>
|
||||
</ai-search-bar>
|
||||
<ai-table :tableData="tableData" :total="page.total" :current.sync="page.current" :size.sync="page.size"
|
||||
@getList="getList" :col-configs="colConfigs" :dict="dict" style="padding:0 20px 20px 20px;">
|
||||
<el-table-column slot="options" label="状态" fixed="right" width="100" align="center">
|
||||
<template slot-scope="{row}">
|
||||
<span :class="`status${row.status}`">{{ dict.getLabel('financingDemandStatus', row.status) }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</ai-table>
|
||||
</div>
|
||||
<!-- <div class="table-content chart-content">-->
|
||||
<!-- <div class="title">交易记录</div>-->
|
||||
<!-- <ai-search-bar style="padding:20px 20px 0 20px;">-->
|
||||
<!-- <template #left>-->
|
||||
<!-- <ai-select v-model="search.status" placeholder="状态" clearable-->
|
||||
<!-- :selectList="dict.getDict('financingDemandStatus')" @change="getList()"></ai-select>-->
|
||||
<!-- <ai-search label="申请时间">-->
|
||||
<!-- <el-date-picker size="small" placeholder="请选择" type="daterange"-->
|
||||
<!-- start-placeholder="开始日期"-->
|
||||
<!-- end-placeholder="结束日期"-->
|
||||
<!-- style="width: 258px;"-->
|
||||
<!-- value-format="yyyy-MM-dd"-->
|
||||
<!-- v-model="stuTime"-->
|
||||
<!-- @change="changeTime"/>-->
|
||||
<!-- </ai-search>-->
|
||||
<!-- </template>-->
|
||||
<!-- <template #right>-->
|
||||
<!-- <el-input size="small" placeholder="联系人/身份证号/企业主体/贷款银行" v-model="search.name" clearable @change="getList()"/>-->
|
||||
<!-- <ai-download :instance="instance" url="appfinancingdemand/export" :params="search"-->
|
||||
<!-- fileName="交易记录">-->
|
||||
<!-- <el-button icon="iconfont iconExported">导出</el-button>-->
|
||||
<!-- </ai-download> -->
|
||||
<!-- </template>-->
|
||||
<!-- </ai-search-bar>-->
|
||||
<!-- <ai-table :tableData="tableData" :total="page.total" :current.sync="page.current" :size.sync="page.size"-->
|
||||
<!-- @getList="getList" :col-configs="colConfigs" :dict="dict" style="padding:0 20px 20px 20px;">-->
|
||||
<!-- <el-table-column slot="options" label="状态" fixed="right" width="100" align="center">-->
|
||||
<!-- <template slot-scope="{row}">-->
|
||||
<!-- <span :class="`status${row.status}`">{{ dict.getLabel('financingDemandStatus', row.status) }}</span>-->
|
||||
<!-- </template>-->
|
||||
<!-- </el-table-column>-->
|
||||
<!-- </ai-table>-->
|
||||
<!-- </div>-->
|
||||
</section>
|
||||
</template>
|
||||
|
||||
@@ -170,7 +170,7 @@ export default {
|
||||
this.lineChartInit(monthList, applyList, auditList)
|
||||
}
|
||||
})
|
||||
this.getList()
|
||||
// this.getList()
|
||||
},
|
||||
getList() {
|
||||
let status = this.search.status || 999
|
||||
|
||||
98
project/xiushan/apps/loanStatement/AppLoanSta.vue
Normal file
98
project/xiushan/apps/loanStatement/AppLoanSta.vue
Normal file
@@ -0,0 +1,98 @@
|
||||
<template>
|
||||
<section class="AppLoanSta">
|
||||
<ai-list>
|
||||
<ai-title slot="title" title="贷款情况汇总" isShowBottomBorder isShowArea v-model="search.areaId"
|
||||
@change="page.current=1,getTableData()" :instance="instance"/>
|
||||
<template #content>
|
||||
<ai-search-bar>
|
||||
<template #left>
|
||||
<ai-select v-model="search.organizationType" placeholder="机构类型" clearable
|
||||
:selectList="dict.getDict('financialOrganizationType')" @change="page.current=1,getTableData()"/>
|
||||
<ai-search label="申请时间">
|
||||
<el-date-picker size="small" placeholder="请选择" type="daterange"
|
||||
start-placeholder="开始日期"
|
||||
end-placeholder="结束日期" v-model="search.applyTime"
|
||||
:default-time="['00:00:00','23:59:59']" value-format="yyyy-MM-dd"
|
||||
@change="handleSearchTime"/>
|
||||
</ai-search>
|
||||
</template>
|
||||
<template #right>
|
||||
<el-input size="small" placeholder="搜索产品名称、身份证、企业、贷款机构" v-model="search.enterpriseName" clearable
|
||||
@change="page.current=1,getTableData()"/>
|
||||
<ai-download :instance="instance" url="/app/appfinancialloanapply/export" :params="search"
|
||||
fileName="交易记录">
|
||||
<el-button icon="iconfont iconExported">导出</el-button>
|
||||
</ai-download>
|
||||
</template>
|
||||
</ai-search-bar>
|
||||
<ai-table :tableData="tableData" :total="page.total" :current.sync="page.current" :size.sync="page.size"
|
||||
@getList="getTableData" :col-configs="colConfigs" :dict="dict"/>
|
||||
</template>
|
||||
</ai-list>
|
||||
</section>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {mapState} from "vuex";
|
||||
|
||||
export default {
|
||||
name: "AppLoanSta",
|
||||
label: "贷款情况汇总",
|
||||
props: {
|
||||
instance: Function,
|
||||
dict: Object,
|
||||
permissions: Function
|
||||
},
|
||||
computed: {
|
||||
...mapState(['user'])
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
search: {status: 1},
|
||||
page: {current: 1, size: 10, total: 0},
|
||||
tableData: [],
|
||||
colConfigs: [
|
||||
{label: "产品名称", width: '200', prop: "productName"},
|
||||
{label: "联系人", width: '100', prop: "name"},
|
||||
{label: "联系方式", width: '140', prop: "phone"},
|
||||
{label: "身份证号", render: (h, {row}) => h('p', this.idCardNoUtil.hideId(row.idNumber)), width: 160},
|
||||
{label: "企业主体", width: '200', prop: "enterpriseName"},
|
||||
{label: "贷款金额(万)", width: '120', prop: "loanAmount"},
|
||||
{label: "申请时间", prop: "createTime", width: 160},
|
||||
{label: "贷款机构", prop: "organizationName"},
|
||||
{label: "机构类型", prop: "organizationType", dict: "financialOrganizationType"},
|
||||
{label: "状态", prop: "status", dict: "financialLoanApplyStatus"},
|
||||
],
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
getTableData() {
|
||||
this.instance.post("/appfinancialloanapply/list", null, {
|
||||
params: {...this.page, ...this.search}
|
||||
}).then(res => {
|
||||
if (res?.data) {
|
||||
this.tableData = res.data?.records
|
||||
this.page.total = res.data.total
|
||||
}
|
||||
})
|
||||
},
|
||||
handleSearchTime(v) {
|
||||
this.page.current = 1
|
||||
this.search.applyStartDate = v?.[0].substring(0, 10)
|
||||
this.search.applyEndDate = v?.[1].substring(0, 10)
|
||||
this.getTableData()
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.search.areaId = this.user.info.areaId
|
||||
this.dict.load('financialLoanApplyStatus', 'financialOrganizationType', 'financialOrganizationType')
|
||||
this.getTableData()
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.AppLoanSta {
|
||||
height: 100%;
|
||||
}
|
||||
</style>
|
||||
118
project/xiushan/apps/loanStatement/AppNeedSta.vue
Normal file
118
project/xiushan/apps/loanStatement/AppNeedSta.vue
Normal file
@@ -0,0 +1,118 @@
|
||||
<template>
|
||||
<section class="AppNeedSta">
|
||||
<ai-list>
|
||||
<ai-title slot="title" title="贷款情况汇总" isShowBottomBorder isShowArea v-model="search.areaId"
|
||||
@change="page.current=1,getTableData()" :instance="instance"/>
|
||||
<template #content>
|
||||
<ai-search-bar>
|
||||
<template #left>
|
||||
<ai-select v-model="search.status" placeholder="状态" :selectList="dict.getDict('financingDemandStatus')"
|
||||
@change="page.current=1,getTableData()"/>
|
||||
<ai-search label="申请时间">
|
||||
<el-date-picker size="small" placeholder="请选择" type="daterange"
|
||||
start-placeholder="开始日期"
|
||||
end-placeholder="结束日期" v-model="search.applyTime"
|
||||
:default-time="['00:00:00','23:59:59']" value-format="yyyy-MM-dd"
|
||||
@change="handleSearchTime"/>
|
||||
</ai-search>
|
||||
</template>
|
||||
<template #right>
|
||||
<el-input size="small" placeholder="联系人/身份证号/企业主体/贷款银行" v-model="search.name" clearable
|
||||
@change="getTableData()"/>
|
||||
<ai-download :instance="instance" url="appfinancingdemand/export" :params="search"
|
||||
fileName="交易记录">
|
||||
<el-button icon="iconfont iconExported">导出</el-button>
|
||||
</ai-download>
|
||||
</template>
|
||||
</ai-search-bar>
|
||||
<ai-table :tableData="tableData" :total="page.total" :current.sync="page.current" :size.sync="page.size"
|
||||
@getList="getTableData" :col-configs="colConfigs" :dict="dict">
|
||||
<el-table-column slot="options" label="状态" fixed="right" width="100" align="center">
|
||||
<template slot-scope="{row}">
|
||||
<span :class="`status${row.status}`">{{ dict.getLabel('financingDemandStatus', row.status) }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</ai-table>
|
||||
</template>
|
||||
</ai-list>
|
||||
</section>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {mapState} from "vuex";
|
||||
|
||||
export default {
|
||||
name: "AppNeedSta",
|
||||
label: "融资情况汇总",
|
||||
props: {
|
||||
instance: Function,
|
||||
dict: Object,
|
||||
permissions: Function
|
||||
},
|
||||
computed: {
|
||||
...mapState(['user'])
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
search: {status: "1"},
|
||||
page: {current: 1, size: 10, total: 0},
|
||||
tableData: [],
|
||||
colConfigs: [
|
||||
// {label: "产品名称", width: '200', prop: "enterpriseName"},
|
||||
{label: "联系人", width: '150', prop: "name"},
|
||||
{label: "联系方式", width: '150', prop: "phone"},
|
||||
// {label: "身份证号", width: '180', prop: "idNumber"},
|
||||
{label: "企业主体", width: '200', prop: "enterpriseName"},
|
||||
{label: "意向金额(万)", width: '150', prop: "loanAmount"},
|
||||
{label: "申请时间", width: '180', prop: "createTime"},
|
||||
{label: "客户经理", width: '200', prop: "auditUserName"},
|
||||
{label: "贷款银行", width: '200', prop: "organizationName"},
|
||||
{label: "放款金额(万)", width: '200', prop: "auditAmount"},
|
||||
// {label: "机构类型", width: '200', prop: "organizationType", dict:'financialOrganizationType'},
|
||||
],
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
getTableData() {
|
||||
let status = this.search.status || 999
|
||||
this.instance.post("/appfinancingdemand/list", null, {
|
||||
params: {...this.page, ...this.search, status}
|
||||
}).then(res => {
|
||||
if (res?.data) {
|
||||
this.tableData = res.data.records
|
||||
this.page.total = res.data.total
|
||||
}
|
||||
})
|
||||
},
|
||||
handleSearchTime(v) {
|
||||
this.page.current = 1
|
||||
this.search.createTimeStart = v?.[0].substring(0, 10)
|
||||
this.search.createTimeEnd = v?.[1].substring(0, 10)
|
||||
this.getTableData()
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.dict.load('financingDemandStatus')
|
||||
this.search.areaId = this.user.info.areaId
|
||||
this.getTableData()
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.AppNeedSta {
|
||||
height: 100%;
|
||||
|
||||
.status0 {
|
||||
color: #f82;
|
||||
}
|
||||
|
||||
.status1 {
|
||||
color: #2EA222;
|
||||
}
|
||||
|
||||
.status2 {
|
||||
color: #f46;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -150,8 +150,8 @@
|
||||
<div v-for="(m,i) in item.candidateFieldInfos" :key="i" style="margin-left: 10px;">
|
||||
<div class="desc_div">{{ m.fieldName }}<span
|
||||
v-if="m.fieldNameSuffix">{{ m.fieldNameSuffix }}</span>:{{
|
||||
m.dictionaryCode
|
||||
? dict.getLabel(m.dictionaryCode, m.fieldValue) : m.fieldValue
|
||||
m.dictionaryCode
|
||||
? dict.getLabel(m.dictionaryCode, m.fieldValue) : m.fieldValue
|
||||
}}
|
||||
</div>
|
||||
</div>
|
||||
@@ -573,7 +573,9 @@ export default {
|
||||
*/
|
||||
agreeRefulse(index) {
|
||||
let dictionaryArr = []
|
||||
this.loading = true
|
||||
this.instance.post(`/app/approv-alapply-info/approval-popup?id=${this.detail.id}&type=${index}`).then(res => {
|
||||
this.loading = false
|
||||
if (res && res.data) {
|
||||
if (index == 1) {
|
||||
res.data.fieldInfos.map(e => {
|
||||
@@ -600,6 +602,7 @@ export default {
|
||||
}
|
||||
}
|
||||
}).catch(err => {
|
||||
this.loading = false
|
||||
console.log(err);
|
||||
})
|
||||
},
|
||||
@@ -788,7 +791,99 @@ export default {
|
||||
}
|
||||
}
|
||||
|
||||
.add_record {
|
||||
::v-deep.add_record {
|
||||
.el-step.is-vertical .el-step__line {
|
||||
width: 1px;
|
||||
left: 20px;
|
||||
}
|
||||
|
||||
.el-step__icon {
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
background-color: #2266FF;
|
||||
border: 1px solid #fff;
|
||||
}
|
||||
|
||||
.el-step__main {
|
||||
padding-left: 36px !important;
|
||||
margin-bottom: 30px;
|
||||
}
|
||||
|
||||
.bg-999 {
|
||||
color: #999;
|
||||
|
||||
.el-step__icon {
|
||||
background-color: #D0D4DC !important;
|
||||
}
|
||||
|
||||
.el-step__line {
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
.record_title {
|
||||
p {
|
||||
color: #999 !important;
|
||||
}
|
||||
}
|
||||
|
||||
.desc_name, .desc_ul {
|
||||
color: #999 !important;
|
||||
}
|
||||
}
|
||||
|
||||
.step-hide {
|
||||
.el-step__line {
|
||||
background-color: #fff;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.dia_ul {
|
||||
justify-content: left;
|
||||
flex-wrap: wrap;
|
||||
|
||||
li {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.right_name {
|
||||
border: 1px solid #fff;
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
border-radius: 50%;
|
||||
line-height: 40px;
|
||||
text-align: center;
|
||||
font-size: 14px;
|
||||
background-color: #2266FF;
|
||||
color: #fff;
|
||||
margin: 0 20px;
|
||||
position: relative;
|
||||
|
||||
.el-icon-arrow-right, .el-icon-circle-plus {
|
||||
position: absolute;
|
||||
top: 15px;
|
||||
right: -30px;
|
||||
color: #999;
|
||||
}
|
||||
|
||||
.el-icon-error {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
color: #333;
|
||||
right: -6px;
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.upload-demo {
|
||||
::v-deep .el-icon-close {
|
||||
transform: translateX(-50px);
|
||||
}
|
||||
}
|
||||
|
||||
.record_icon {
|
||||
position: relative;
|
||||
|
||||
@@ -909,99 +1004,6 @@ export default {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.el-step.is-vertical .el-step__line {
|
||||
width: 1px;
|
||||
left: 20px;
|
||||
}
|
||||
|
||||
.el-step__icon {
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
background-color: #2266FF;
|
||||
border: 1px solid #fff;
|
||||
}
|
||||
|
||||
.bg-999 {
|
||||
color: #999;
|
||||
|
||||
.el-step__icon {
|
||||
background-color: #D0D4DC !important;
|
||||
}
|
||||
|
||||
.el-step__line {
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
.record_title {
|
||||
p {
|
||||
color: #999 !important;
|
||||
}
|
||||
}
|
||||
|
||||
.desc_name, .desc_ul {
|
||||
color: #999 !important;
|
||||
}
|
||||
}
|
||||
|
||||
.step-hide {
|
||||
.el-step__line {
|
||||
background-color: #fff;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.el-step__main {
|
||||
padding-left: 36px !important;
|
||||
margin-bottom: 30px;
|
||||
}
|
||||
|
||||
|
||||
.dia_ul {
|
||||
justify-content: left;
|
||||
flex-wrap: wrap;
|
||||
|
||||
li {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.right_name {
|
||||
border: 1px solid #fff;
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
border-radius: 50%;
|
||||
line-height: 40px;
|
||||
text-align: center;
|
||||
font-size: 14px;
|
||||
background-color: #2266FF;
|
||||
color: #fff;
|
||||
margin: 0 20px;
|
||||
position: relative;
|
||||
|
||||
.el-icon-arrow-right, .el-icon-circle-plus {
|
||||
position: absolute;
|
||||
top: 15px;
|
||||
right: -30px;
|
||||
color: #999;
|
||||
}
|
||||
|
||||
.el-icon-error {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
color: #333;
|
||||
right: -6px;
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.upload-demo {
|
||||
::v-deep .el-icon-close {
|
||||
transform: translateX(-50px);
|
||||
}
|
||||
}
|
||||
|
||||
::v-deep .el-radio {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
@@ -9,13 +9,8 @@
|
||||
<el-row type="type" justify="space-between" :gutter="20">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="所属部门" prop="department">
|
||||
<el-select placeholder="请选择" size="small" v-model="form.department" clearable style="width: 100%;">
|
||||
<el-option
|
||||
v-for="(item,i) in dict.getDict('hbDepartment')" :key="i"
|
||||
:label="item.dictName"
|
||||
:value="item.dictValue">
|
||||
</el-option>
|
||||
</el-select>
|
||||
<ai-select placeholder="请选择" v-model="form.department" action="/appfinancialorganization/nameList"
|
||||
:instance="instance" :prop="{label:'organizationName',value:'organizationName'}"/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
@@ -39,7 +34,7 @@
|
||||
</el-form-item>
|
||||
<el-form-item label="是否启用" prop="processDefStatus">
|
||||
<el-switch v-model="form.processDefStatus"
|
||||
active-color="#5088FF" inactive-color="#D0D4DC" active-value="1" inactive-value="0">
|
||||
active-color="#5088FF" inactive-color="#D0D4DC" active-value="1" inactive-value="0">
|
||||
</el-switch>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
@@ -56,11 +51,11 @@ export default {
|
||||
dict: Object,
|
||||
},
|
||||
data() {
|
||||
const validTimeLimit = (rule, value, callback) =>{
|
||||
if(!value){
|
||||
const validTimeLimit = (rule, value, callback) => {
|
||||
if (!value) {
|
||||
return callback(new Error('请输入办结时限'));
|
||||
}else {
|
||||
if(+value<=0){
|
||||
} else {
|
||||
if (+value <= 0) {
|
||||
return callback(new Error('最小值为1'));
|
||||
}
|
||||
callback();
|
||||
@@ -76,11 +71,11 @@ export default {
|
||||
processDefStatus: "1",
|
||||
},
|
||||
classList: [],
|
||||
rules:{
|
||||
rules: {
|
||||
processName: [{required: true, message: '请输入事项名称', trigger: 'blur'}],
|
||||
department: [{required: true, message: '请选择所属部门', trigger: 'change'}],
|
||||
// department: [{required: true, message: '请选择所属部门', trigger: 'change'}],
|
||||
classificationId: [{required: true, message: '请选择所属分类', trigger: 'change'}],
|
||||
timeLimit: [{required: true,validator:validTimeLimit ,trigger: 'blur'}],
|
||||
timeLimit: [{required: true, validator: validTimeLimit, trigger: 'blur'}],
|
||||
needToKnow: [{required: true, message: '请输入办理须知', trigger: 'blur'}],
|
||||
processDefStatus: [{required: true, message: '请选择是否启用', trigger: 'change'}],
|
||||
}
|
||||
|
||||
219
project/xiushan/components/personCreditReport.vue
Normal file
219
project/xiushan/components/personCreditReport.vue
Normal file
@@ -0,0 +1,219 @@
|
||||
<template>
|
||||
<section class="personCreditReport">
|
||||
<el-link v-if="hasIdNumber" type="primary" @click.stop="handleShow">个人产权</el-link>
|
||||
<el-dialog :visible.sync="dialog" title="个人产权信息" width="1200px" customFooter>
|
||||
<div class="top">
|
||||
<div class="top-left">
|
||||
<el-image v-if="info.avatar"/>
|
||||
<div v-else v-html="txtLogo"/>
|
||||
</div>
|
||||
<div class="top-right">
|
||||
<div class="top-right__top">
|
||||
<h2 v-text="person.name"/>
|
||||
</div>
|
||||
<div class="top-right__bottom">
|
||||
<ai-wrapper
|
||||
label-width="130px">
|
||||
<ai-info-item label="手机号码:" :value="person.phone"/>
|
||||
<ai-info-item label="身份证号:" :value="person.idNumber"/>
|
||||
</ai-wrapper>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<el-tabs type="border-card" stretch>
|
||||
<el-tab-pane label="企业信息">
|
||||
<ai-table :dict="dict" :tableData="info.enterpriseList" :col-configs="colConfigs1"
|
||||
:isShowPagination="false" border tableSize="small"/>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane label="宅基地信息" lazy>
|
||||
<ai-table :dict="dict" :tableData="info.homesteadInfoList" :col-configs="colConfigs2"
|
||||
:isShowPagination="false" border tableSize="small"/>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane label="集体经济组织股权" lazy>
|
||||
<ai-table :dict="dict" :tableData="info.shareholderList" :col-configs="colConfigs3"
|
||||
:isShowPagination="false" border tableSize="small"/>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane label="土地流转经营" lazy>
|
||||
<ai-table :dict="dict" :tableData="info.landCirculateInfoList" :col-configs="colConfigs4"
|
||||
:isShowPagination="false" border tableSize="small"/>
|
||||
</el-tab-pane>
|
||||
</el-tabs>
|
||||
<template #footer>
|
||||
<el-button @click.stop="dialog=false">关闭</el-button>
|
||||
</template>
|
||||
</el-dialog>
|
||||
</section>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {mapState} from "vuex";
|
||||
|
||||
export default {
|
||||
name: "personCreditReport",
|
||||
computed: {
|
||||
...mapState(['user']),
|
||||
isFinanceUser() {
|
||||
return !!this.user.financeUser?.id
|
||||
},
|
||||
txtLogo() {
|
||||
return this.person.name?.substring(0, 1) || ""
|
||||
},
|
||||
hasIdNumber() {
|
||||
return !!this.person.idNumber
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
dialog: false,
|
||||
info: {},
|
||||
currIndex: 0,
|
||||
colConfigs1: [
|
||||
{prop: 'enterpriseName', label: '企业名称'},
|
||||
{prop: 'enterpriseType', label: '企业类型', dict: "enterpriseType", align: 'center'},
|
||||
{prop: 'areaName', label: '所属区域', align: 'center'},
|
||||
{prop: 'businessScope', label: '经营范围', align: 'center'},
|
||||
{prop: 'operationPeriod', label: '营业期限', align: 'center'},
|
||||
],
|
||||
colConfigs2: [
|
||||
{prop: 'usePerson', label: '使用人'},
|
||||
{prop: 'houseNumber', label: '家庭人口', align: 'center'},
|
||||
{prop: 'areaName', label: '所在地区', align: 'center'},
|
||||
{prop: 'landArea', label: '土地面积/㎡', align: 'center'},
|
||||
{prop: 'landOwnership', label: '土地所有权', align: 'center'},
|
||||
],
|
||||
colConfigs3: [
|
||||
{prop: 'organizationName', label: '集体经济组织名称'},
|
||||
{prop: 'areaName', align: 'center', label: '所在地区'},
|
||||
{prop: 'name', align: 'center', label: '持股人'},
|
||||
{prop: 'shareholdingNumber', align: 'center', label: '股权总数'},
|
||||
{prop: 'shareholdingAmount', align: 'center', label: '股金总额'}
|
||||
],
|
||||
colConfigs4: [
|
||||
{prop: 'landOutflowName', label: '土地流出方'},
|
||||
{prop: 'landArea', align: 'center', label: '土地面积/㎡'},
|
||||
{prop: 'landUndertakeName', align: 'center', label: '土地承接方'},
|
||||
{prop: 'circulateType', align: 'center', label: '流转形式'},
|
||||
{prop: 'startDate', align: 'center', label: '开始日期'},
|
||||
],
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.dict.load("enterpriseType")
|
||||
},
|
||||
methods: {
|
||||
getPCR() {
|
||||
let {idNumber, createUserId: id} = this.person
|
||||
return this.instance.post(`/appportaluser/queryPersonPropertyRight`, null, {
|
||||
params: {idNumber, id}
|
||||
}).then(res => {
|
||||
if (res?.data) {
|
||||
let {avatar} = res.data
|
||||
if (avatar) {
|
||||
avatar = JSON.parse(avatar)?.[0]
|
||||
}
|
||||
return this.info = {...res.data, avatar}
|
||||
}
|
||||
})
|
||||
},
|
||||
handleShow() {
|
||||
this.getPCR().then(() => this.dialog = true)
|
||||
}
|
||||
},
|
||||
props: {
|
||||
instance: Function,
|
||||
dict: Object,
|
||||
permissions: Function,
|
||||
person: {required: true, default: () => ({})}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.personCreditReport {
|
||||
margin-left: 16px;
|
||||
|
||||
.table-item {
|
||||
h2 {
|
||||
margin-bottom: 16px;
|
||||
color: #333333;
|
||||
font-size: 18px;
|
||||
font-weight: 600;
|
||||
}
|
||||
}
|
||||
|
||||
.top {
|
||||
display: flex;
|
||||
margin-bottom: 20px;
|
||||
padding: 34px 30px 16px;
|
||||
border: 1px solid #EEEEEE;
|
||||
border-radius: 4px;
|
||||
|
||||
.top-left {
|
||||
margin-right: 16px;
|
||||
padding: 12px 16px;
|
||||
background: #8CA3CD;
|
||||
color: #FFFFFF;
|
||||
font-size: 22px;
|
||||
line-height: 30px;
|
||||
border-radius: 8px;
|
||||
height: fit-content;
|
||||
}
|
||||
|
||||
.top-right {
|
||||
flex: 1;
|
||||
|
||||
.top-right__top {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
margin-bottom: 16px;
|
||||
|
||||
h2 {
|
||||
color: #333333;
|
||||
font-size: 22px;
|
||||
}
|
||||
|
||||
.right {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
width: 97px;
|
||||
height: 32px;
|
||||
background: #E8F4FF;
|
||||
border: 1px solid #A3D3FF;
|
||||
border-radius: 3px;
|
||||
color: #1890FF;
|
||||
font-size: 13px;
|
||||
cursor: pointer;
|
||||
|
||||
&:hover {
|
||||
opacity: 0.6;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.top-right__bottom {
|
||||
padding: 16px 10px 10px 0;
|
||||
background: #F6FBFF;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
::v-deep.el-tabs {
|
||||
.el-tabs__header {
|
||||
padding: unset;
|
||||
|
||||
.el-tabs__item {
|
||||
background: #f3f6f9;
|
||||
border-bottom-color: #ddd;
|
||||
margin-left: 0;
|
||||
|
||||
&.is-active {
|
||||
background: #fff;
|
||||
border-bottom-color: transparent;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
Reference in New Issue
Block a user