Browse Source

信用相关模块与用户模块进行关联处理

main
GhubCy 2 months ago
parent
commit
178d3f124d
  1. 113
      src/views/business/creditRule/index.vue
  2. 44
      src/views/business/userAccount/index.vue
  3. 51
      src/views/business/userCredit/index.vue
  4. 138
      src/views/business/userCreditRecord/index.vue

113
src/views/business/creditRule/index.vue

@ -9,14 +9,6 @@
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="规则描述" prop="ruleDescription">
<el-input
v-model="queryParams.ruleDescription"
placeholder="请输入规则描述"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="生效日期" prop="effectiveDate"> <el-form-item label="生效日期" prop="effectiveDate">
<el-date-picker clearable <el-date-picker clearable
v-model="queryParams.effectiveDate" v-model="queryParams.effectiveDate"
@ -41,10 +33,10 @@
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="是否启用" prop="isEnabled"> <el-form-item label="适用类型" prop="applicableUserType">
<el-input <el-input
v-model="queryParams.isEnabled" v-model="queryParams.applicableUserType"
placeholder="请输入是否启用" placeholder="请输入规则优先级"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
@ -57,13 +49,17 @@
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="是否启用" prop="isEnabled">
<el-select v-model="queryParams.isEnabled" placeholder="请选择是否启用" clearable>
<el-option label="是" value="1"/>
<el-option label="否" value="0"/>
</el-select>
</el-form-item>
<el-form-item label="反馈方向" prop="feedbackDirection"> <el-form-item label="反馈方向" prop="feedbackDirection">
<el-input <el-select v-model="queryParams.feedbackDirection" placeholder="请选择反馈方向" clearable>
v-model="queryParams.feedbackDirection" <el-option label="正" value="1"/>
placeholder="请输入反馈方向" <el-option label="负" value="0"/>
clearable </el-select>
@keyup.enter.native="handleQuery"
/>
</el-form-item> </el-form-item>
<el-form-item label="规则值" prop="value"> <el-form-item label="规则值" prop="value">
<el-input <el-input
@ -74,7 +70,10 @@
/> />
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">{{ $t('common.button.search') }}</el-button> <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">{{
$t('common.button.search')
}}
</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">{{ $t('common.button.reset') }}</el-button> <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">{{ $t('common.button.reset') }}</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
@ -88,7 +87,8 @@
size="mini" size="mini"
@click="handleAdd" @click="handleAdd"
v-hasPermi="['business:creditRule:add']" v-hasPermi="['business:creditRule:add']"
>{{ $t('common.button.add') }}</el-button> >{{ $t('common.button.add') }}
</el-button>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
@ -99,7 +99,8 @@
:disabled="single" :disabled="single"
@click="handleUpdate" @click="handleUpdate"
v-hasPermi="['business:creditRule:edit']" v-hasPermi="['business:creditRule:edit']"
>{{ $t('common.button.edit') }}</el-button> >{{ $t('common.button.edit') }}
</el-button>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
@ -110,7 +111,8 @@
:disabled="multiple" :disabled="multiple"
@click="handleDelete" @click="handleDelete"
v-hasPermi="['business:creditRule:remove']" v-hasPermi="['business:creditRule:remove']"
>{{ $t('common.button.delete') }}</el-button> >{{ $t('common.button.delete') }}
</el-button>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
@ -120,7 +122,8 @@
size="mini" size="mini"
@click="handleExport" @click="handleExport"
v-hasPermi="['business:creditRule:export']" v-hasPermi="['business:creditRule:export']"
>{{ $t('common.button.export') }}</el-button> >{{ $t('common.button.export') }}
</el-button>
</el-col> </el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row> </el-row>
@ -132,10 +135,18 @@
<el-table-column label="规则描述" align="center" prop="ruleDescription"/> <el-table-column label="规则描述" align="center" prop="ruleDescription"/>
<el-table-column label="优先级" align="center" prop="priority"/> <el-table-column label="优先级" align="center" prop="priority"/>
<el-table-column label="适用类型" align="center" prop="applicableUserType"/> <el-table-column label="适用类型" align="center" prop="applicableUserType"/>
<el-table-column label="是否启用" align="center" prop="isEnabled" /> <el-table-column label="是否启用" align="center" prop="isEnabled">
<template slot-scope="scope">
<span>{{ scope.row.isEnabled === 1 ? '是' : '否' }}</span>
</template>
</el-table-column>
<el-table-column label="规则场景" align="center" prop="scene"/> <el-table-column label="规则场景" align="center" prop="scene"/>
<el-table-column label="规则类型" align="center" prop="type"/> <el-table-column label="规则类型" align="center" prop="type"/>
<el-table-column label="反馈方向" align="center" prop="feedbackDirection" /> <el-table-column label="反馈方向" align="center" prop="feedbackDirection">
<template slot-scope="scope">
<span>{{ scope.row.feedbackDirection === 1 ? '正' : '负' }}</span>
</template>
</el-table-column>
<el-table-column label="规则值" align="center" prop="value"/> <el-table-column label="规则值" align="center" prop="value"/>
<el-table-column label="生效日期" align="center" prop="effectiveDate" width="180"> <el-table-column label="生效日期" align="center" prop="effectiveDate" width="180">
<template slot-scope="scope"> <template slot-scope="scope">
@ -149,13 +160,18 @@
</el-table-column> </el-table-column>
<el-table-column label="操作" align="center" width="200" class-name="small-padding fixed-width"> <el-table-column label="操作" align="center" width="200" class-name="small-padding fixed-width">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-view" @click="handleDetail(scope.row)">{{ $t('common.button.detail') }}</el-button> <el-button size="mini" type="text" icon="el-icon-view" @click="handleDetail(scope.row)">
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" v-hasPermi="['business:creditRule:edit']">{{ $t('common.button.edit') }}</el-button> {{ $t('common.button.detail') }}
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)" v-hasPermi="['business:creditRule:remove']">{{ $t('common.button.delete') }}</el-button> </el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['business:creditRule:edit']">{{ $t('common.button.edit') }}
</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['business:creditRule:remove']">{{ $t('common.button.delete') }}
</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<pagination <pagination
v-show="total>0" v-show="total>0"
:total="total" :total="total"
@ -163,7 +179,6 @@
:limit.sync="queryParams.pageSize" :limit.sync="queryParams.pageSize"
@pagination="getList" @pagination="getList"
/> />
<!-- 添加或修改信用规则对话框 --> <!-- 添加或修改信用规则对话框 -->
<el-dialog :title="title" :visible.sync="open" width="700px" append-to-body> <el-dialog :title="title" :visible.sync="open" width="700px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="auto"> <el-form ref="form" :model="form" :rules="rules" label-width="auto">
@ -173,15 +188,14 @@
<el-form-item label="规则描述" prop="ruleDescription"> <el-form-item label="规则描述" prop="ruleDescription">
<el-input v-model="form.ruleDescription" type="textarea" placeholder="请输入内容"/> <el-input v-model="form.ruleDescription" type="textarea" placeholder="请输入内容"/>
</el-form-item> </el-form-item>
<el-form-item label="规则生效日期" prop="effectiveDate"> <el-form-item label="生效/失效日期" prop="effectiveDate">
<el-date-picker clearable <el-date-picker clearable
v-model="form.effectiveDate" v-model="form.effectiveDate"
type="datetime" type="datetime"
value-format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择规则生效日期"> placeholder="请选择规则生效日期">
</el-date-picker> </el-date-picker>
</el-form-item> <span style="margin: 0 20px;"></span>
<el-form-item label="规则失效日期" prop="expirationDate">
<el-date-picker clearable <el-date-picker clearable
v-model="form.expirationDate" v-model="form.expirationDate"
type="datetime" type="datetime"
@ -192,21 +206,41 @@
<el-form-item label="规则优先级" prop="priority"> <el-form-item label="规则优先级" prop="priority">
<el-input v-model="form.priority" placeholder="请输入规则优先级"/> <el-input v-model="form.priority" placeholder="请输入规则优先级"/>
</el-form-item> </el-form-item>
<el-row>
<el-col :span="12">
<el-form-item label="是否启用" prop="isEnabled"> <el-form-item label="是否启用" prop="isEnabled">
<el-input v-model="form.isEnabled" placeholder="请输入是否启用" /> <el-radio-group v-model="form.isEnabled" style="margin-right: 20px;">
<el-radio :label="1"></el-radio>
<el-radio :label="0"></el-radio>
</el-radio-group>
</el-form-item> </el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="反馈方向" prop="feedbackDirection">
<el-radio-group v-model="form.feedbackDirection">
<el-radio label="1"></el-radio>
<el-radio label="0"></el-radio>
</el-radio-group>
</el-form-item>
</el-col>
</el-row>
<el-form-item label="规则场景" prop="scene"> <el-form-item label="规则场景" prop="scene">
<el-input v-model="form.scene" placeholder="请输入规则场景"/> <el-input v-model="form.scene" placeholder="请输入规则场景"/>
</el-form-item> </el-form-item>
<el-form-item label="反馈方向" prop="feedbackDirection"> <el-form-item label="适用用户" prop="applicableUserType">
<el-input v-model="form.feedbackDirection" placeholder="请输入反馈方向" /> <el-input v-model="form.applicableUserType" placeholder="请输入适用用户"/>
</el-form-item> </el-form-item>
<el-form-item label="规则值" prop="value"> <el-form-item label="规则值" prop="value">
<el-input v-model="form.value" placeholder="请输入规则值"/> <el-input v-model="form.value" placeholder="请输入规则值"/>
</el-form-item> </el-form-item>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button :loading="buttonLoading" type="primary" @click="submitForm">{{ $t('common.button.confirm') }}</el-button> <el-button :loading="buttonLoading" type="primary" @click="submitForm">{{
$t('common.button.confirm')
}}
</el-button>
<el-button @click="cancel">{{ $t('common.button.cancel') }}</el-button> <el-button @click="cancel">{{ $t('common.button.cancel') }}</el-button>
</div> </div>
</el-dialog> </el-dialog>
@ -241,13 +275,13 @@
{{ form.priority }} {{ form.priority }}
</el-form-item> </el-form-item>
<el-form-item label="是否启用:"> <el-form-item label="是否启用:">
{{form.isEnabled}} {{ form.isEnabled === 1 ? '是' : '否' }}
</el-form-item> </el-form-item>
<el-form-item label="规则场景:"> <el-form-item label="规则场景:">
{{ form.scene }} {{ form.scene }}
</el-form-item> </el-form-item>
<el-form-item label="反馈方向:"> <el-form-item label="反馈方向:">
{{form.feedbackDirection}} {{ form.feedbackDirection === 1 ? '正' : '负' }}
</el-form-item> </el-form-item>
<el-form-item label="规则值:"> <el-form-item label="规则值:">
{{ form.value }} {{ form.value }}
@ -309,9 +343,6 @@ export default {
form: {}, form: {},
// //
rules: { rules: {
id: [
{ required: true, message: "id不能为空", trigger: "blur" }
],
ruleName: [ ruleName: [
{required: true, message: "规则名称不能为空", trigger: "blur"} {required: true, message: "规则名称不能为空", trigger: "blur"}
], ],

44
src/views/business/userAccount/index.vue

@ -2,15 +2,20 @@
<div class="app-container"> <div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item :label="$t('business.userAccount.accountName')" prop="accountName"> <el-form-item :label="$t('business.userAccount.accountName')" prop="accountName">
<el-input v-model="queryParams.accountName" :placeholder="$t('business.userAccount.accountNamePlaceholder')" clearable @keyup.enter.native="handleQuery" /> <el-input v-model="queryParams.accountName" :placeholder="$t('business.userAccount.accountNamePlaceholder')"
clearable @keyup.enter.native="handleQuery"/>
</el-form-item> </el-form-item>
<el-form-item :label="$t('common.tableMsg.createTime')"> <el-form-item :label="$t('common.tableMsg.createTime')">
<el-date-picker v-model="daterangeCreateTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" <el-date-picker v-model="daterangeCreateTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss"
type="daterange" range-separator="-" :start-placeholder="$t('common.tableMsg.startDate')" :end-placeholder="$t('common.tableMsg.endDate')" type="daterange" range-separator="-" :start-placeholder="$t('common.tableMsg.startDate')"
:end-placeholder="$t('common.tableMsg.endDate')"
:default-time="['00:00:00', '23:59:59']"></el-date-picker> :default-time="['00:00:00', '23:59:59']"></el-date-picker>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">{{ $t('common.button.search') }}</el-button> <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">{{
$t('common.button.search')
}}
</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">{{ $t('common.button.reset') }}</el-button> <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">{{ $t('common.button.reset') }}</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
@ -18,19 +23,23 @@
<el-row :gutter="10" class="mb8"> <el-row :gutter="10" class="mb8">
<el-col :span="1.5"> <el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd" <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
v-hasPermi="['business:userAccount:add']">{{ $t('common.button.add') }}</el-button> v-hasPermi="['business:userAccount:add']">{{ $t('common.button.add') }}
</el-button>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button type="success" plain icon="el-icon-edit" size="mini" :disabled="single" @click="handleUpdate" <el-button type="success" plain icon="el-icon-edit" size="mini" :disabled="single" @click="handleUpdate"
v-hasPermi="['business:userAccount:edit']">{{ $t('common.button.edit') }}</el-button> v-hasPermi="['business:userAccount:edit']">{{ $t('common.button.edit') }}
</el-button>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button type="danger" plain icon="el-icon-delete" size="mini" :disabled="multiple" @click="handleDelete" <el-button type="danger" plain icon="el-icon-delete" size="mini" :disabled="multiple" @click="handleDelete"
v-hasPermi="['business:userAccount:remove']">{{ $t('common.button.delete') }}</el-button> v-hasPermi="['business:userAccount:remove']">{{ $t('common.button.delete') }}
</el-button>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" <el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport"
v-hasPermi="['business:userAccount:export']">{{ $t('common.button.export') }}</el-button> v-hasPermi="['business:userAccount:export']">{{ $t('common.button.export') }}
</el-button>
</el-col> </el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row> </el-row>
@ -47,13 +56,18 @@
<el-tag type="danger" v-if="scope.row.status == '1'">{{ $t('business.userAccount.statusFrozen') }}</el-tag> <el-tag type="danger" v-if="scope.row.status == '1'">{{ $t('business.userAccount.statusFrozen') }}</el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column :label="$t('common.button.operation')" align="center" width="200" class-name="small-padding fixed-width"> <el-table-column :label="$t('common.button.operation')" align="center" width="200"
class-name="small-padding fixed-width">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-view" @click="handleDetail(scope.row)">{{ $t('common.button.detail') }}</el-button> <el-button size="mini" type="text" icon="el-icon-view" @click="handleDetail(scope.row)">
{{ $t('common.button.detail') }}
</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['business:userAccount:edit']">{{ $t('common.button.edit') }}</el-button> v-hasPermi="['business:userAccount:edit']">{{ $t('common.button.edit') }}
</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)" <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['business:userAccount:remove']">{{ $t('common.button.delete') }}</el-button> v-hasPermi="['business:userAccount:remove']">{{ $t('common.button.delete') }}
</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@ -78,7 +92,10 @@
</el-form-item> </el-form-item>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button :loading="buttonLoading" type="primary" @click="submitForm">{{ $t('common.button.confirm') }}</el-button> <el-button :loading="buttonLoading" type="primary" @click="submitForm">{{
$t('common.button.confirm')
}}
</el-button>
<el-button @click="cancel">{{ $t('common.button.cancel') }}</el-button> <el-button @click="cancel">{{ $t('common.button.cancel') }}</el-button>
</div> </div>
</el-dialog> </el-dialog>
@ -288,7 +305,8 @@
this.loading = false; this.loading = false;
this.getList(); this.getList();
this.$modal.msgSuccess(this.$t('common.button.deleteSuccess')); this.$modal.msgSuccess(this.$t('common.button.deleteSuccess'));
}).catch(() => {}).finally(() => { }).catch(() => {
}).finally(() => {
this.loading = false; this.loading = false;
}); });
}, },

51
src/views/business/userCredit/index.vue

@ -1,6 +1,15 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="用户id" prop="userId">
<el-input
v-model="queryParams.userId"
placeholder="请输入用户id"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="信用评分" prop="score"> <el-form-item label="信用评分" prop="score">
<el-input <el-input
v-model="queryParams.score" v-model="queryParams.score"
@ -26,7 +35,10 @@
/> />
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">{{ $t('common.button.search') }}</el-button> <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">{{
$t('common.button.search')
}}
</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">{{ $t('common.button.reset') }}</el-button> <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">{{ $t('common.button.reset') }}</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
@ -40,7 +52,8 @@
size="mini" size="mini"
@click="handleAdd" @click="handleAdd"
v-hasPermi="['business:userCredit:add']" v-hasPermi="['business:userCredit:add']"
>{{ $t('common.button.add') }}</el-button> >{{ $t('common.button.add') }}
</el-button>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
@ -51,7 +64,8 @@
:disabled="single" :disabled="single"
@click="handleUpdate" @click="handleUpdate"
v-hasPermi="['business:userCredit:edit']" v-hasPermi="['business:userCredit:edit']"
>{{ $t('common.button.edit') }}</el-button> >{{ $t('common.button.edit') }}
</el-button>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
@ -62,7 +76,8 @@
:disabled="multiple" :disabled="multiple"
@click="handleDelete" @click="handleDelete"
v-hasPermi="['business:userCredit:remove']" v-hasPermi="['business:userCredit:remove']"
>{{ $t('common.button.delete') }}</el-button> >{{ $t('common.button.delete') }}
</el-button>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
@ -72,13 +87,16 @@
size="mini" size="mini"
@click="handleExport" @click="handleExport"
v-hasPermi="['business:userCredit:export']" v-hasPermi="['business:userCredit:export']"
>{{ $t('common.button.export') }}</el-button> >{{ $t('common.button.export') }}
</el-button>
</el-col> </el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row> </el-row>
<el-table v-loading="loading" :data="userCreditList" @selection-change="handleSelectionChange"> <el-table v-loading="loading" :data="userCreditList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center"/> <el-table-column type="selection" width="55" align="center"/>
<el-table-column label="用户ID" align="center" prop="userId"/>
<el-table-column label="用户姓名" align="center" prop="userName"/>
<el-table-column label="用户的信用评分" align="center" prop="score"/> <el-table-column label="用户的信用评分" align="center" prop="score"/>
<el-table-column label="累计违规次数" align="center" prop="violationNum"/> <el-table-column label="累计违规次数" align="center" prop="violationNum"/>
<el-table-column label="违规次数比例(%)" align="center" prop="violationPro"/> <el-table-column label="违规次数比例(%)" align="center" prop="violationPro"/>
@ -89,21 +107,24 @@
type="text" type="text"
icon="el-icon-view" icon="el-icon-view"
@click="handleDetail(scope.row)" @click="handleDetail(scope.row)"
>{{ $t('common.button.detail') }}</el-button> >{{ $t('common.button.detail') }}
</el-button>
<el-button <el-button
size="mini" size="mini"
type="text" type="text"
icon="el-icon-edit" icon="el-icon-edit"
@click="handleUpdate(scope.row)" @click="handleUpdate(scope.row)"
v-hasPermi="['business:userCredit:edit']" v-hasPermi="['business:userCredit:edit']"
>{{ $t('common.button.edit') }}</el-button> >{{ $t('common.button.edit') }}
</el-button>
<el-button <el-button
size="mini" size="mini"
type="text" type="text"
icon="el-icon-delete" icon="el-icon-delete"
@click="handleDelete(scope.row)" @click="handleDelete(scope.row)"
v-hasPermi="['business:userCredit:remove']" v-hasPermi="['business:userCredit:remove']"
>{{ $t('common.button.delete') }}</el-button> >{{ $t('common.button.delete') }}
</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@ -119,6 +140,9 @@
<!-- 添加或修改信用对话框 --> <!-- 添加或修改信用对话框 -->
<el-dialog :title="title" :visible.sync="open" width="700px" append-to-body> <el-dialog :title="title" :visible.sync="open" width="700px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="auto"> <el-form ref="form" :model="form" :rules="rules" label-width="auto">
<el-form-item label="用户ID" prop="userId">
<el-input v-model="form.userId" placeholder="请输入用户ID"/>
</el-form-item>
<el-form-item label="用户的信用评分" prop="score"> <el-form-item label="用户的信用评分" prop="score">
<el-input v-model="form.score" placeholder="请输入用户的信用评分"/> <el-input v-model="form.score" placeholder="请输入用户的信用评分"/>
</el-form-item> </el-form-item>
@ -130,7 +154,10 @@
</el-form-item> </el-form-item>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button :loading="buttonLoading" type="primary" @click="submitForm">{{ $t('common.button.confirm') }}</el-button> <el-button :loading="buttonLoading" type="primary" @click="submitForm">{{
$t('common.button.confirm')
}}
</el-button>
<el-button @click="cancel">{{ $t('common.button.cancel') }}</el-button> <el-button @click="cancel">{{ $t('common.button.cancel') }}</el-button>
</div> </div>
</el-dialog> </el-dialog>
@ -138,6 +165,12 @@
<!-- 信用详情 --> <!-- 信用详情 -->
<el-dialog :title="title" :visible.sync="detailOpen" width="700px" append-to-body> <el-dialog :title="title" :visible.sync="detailOpen" width="700px" append-to-body>
<el-form ref="form" :model="form" label-width="auto"> <el-form ref="form" :model="form" label-width="auto">
<el-form-item label="用户Id:">
{{ form.userId }}
</el-form-item>
<el-form-item label="用户名:">
{{ form.userName }}
</el-form-item>
<el-form-item label="用户的信用评分:"> <el-form-item label="用户的信用评分:">
{{ form.score }} {{ form.score }}
</el-form-item> </el-form-item>

138
src/views/business/userCreditRecord/index.vue

@ -1,40 +1,51 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="违规业务" prop="violationBus"> <el-form-item label="用户Id" prop="userId">
<el-input <el-input
v-model="queryParams.violationBus" v-model="queryParams.userId"
placeholder="请输入违规业务" placeholder="请输入违规业务"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="订单号" prop="violationOrd"> <el-form-item label="违规业务" prop="violationBus">
<el-input
v-model="queryParams.violationOrd"
placeholder="请输入违规订单号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="违规类型" prop="violationType">
<el-input <el-input
v-model="queryParams.violationType" v-model="queryParams.violationBus"
placeholder="请输入违规类型" placeholder="请输入违规业务"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="违规级别" prop="violationLevel"> <el-form-item label="订单号" prop="violationOrd">
<el-input <el-input
v-model="queryParams.violationLevel" v-model="queryParams.violationOrd"
placeholder="请输入违规级别" placeholder="请输入违规订单号"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<!-- <el-form-item label="违规类型" prop="violationType">-->
<!-- <el-input-->
<!-- v-model="queryParams.violationType"-->
<!-- placeholder="请输入违规类型"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="违规级别" prop="violationLevel">-->
<!-- <el-input-->
<!-- v-model="queryParams.violationLevel"-->
<!-- placeholder="请输入违规级别"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">{{ $t('common.button.search') }}</el-button> <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">{{
$t('common.button.search')
}}
</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">{{ $t('common.button.reset') }}</el-button> <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">{{ $t('common.button.reset') }}</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
@ -48,7 +59,8 @@
size="mini" size="mini"
@click="handleAdd" @click="handleAdd"
v-hasPermi="['business:userCreditRecord:add']" v-hasPermi="['business:userCreditRecord:add']"
>{{ $t('common.button.add') }}</el-button> >{{ $t('common.button.add') }}
</el-button>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
@ -59,7 +71,8 @@
:disabled="single" :disabled="single"
@click="handleUpdate" @click="handleUpdate"
v-hasPermi="['business:userCreditRecord:edit']" v-hasPermi="['business:userCreditRecord:edit']"
>{{ $t('common.button.edit') }}</el-button> >{{ $t('common.button.edit') }}
</el-button>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
@ -70,7 +83,8 @@
:disabled="multiple" :disabled="multiple"
@click="handleDelete" @click="handleDelete"
v-hasPermi="['business:userCreditRecord:remove']" v-hasPermi="['business:userCreditRecord:remove']"
>{{ $t('common.button.delete') }}</el-button> >{{ $t('common.button.delete') }}
</el-button>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
@ -80,18 +94,21 @@
size="mini" size="mini"
@click="handleExport" @click="handleExport"
v-hasPermi="['business:userCreditRecord:export']" v-hasPermi="['business:userCreditRecord:export']"
>{{ $t('common.button.export') }}</el-button> >{{ $t('common.button.export') }}
</el-button>
</el-col> </el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row> </el-row>
<el-table v-loading="loading" :data="userCreditRecordList" @selection-change="handleSelectionChange"> <el-table v-loading="loading" :data="userCreditRecordList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center"/> <el-table-column type="selection" width="55" align="center"/>
<el-table-column label="违规业务" align="center" prop="violationBus" /> <el-table-column label="用户Id" align="center" prop="userId"/>
<el-table-column label="用户名" align="center" prop="userName"/>
<el-table-column label="违规订单号" align="center" prop="violationOrd"/> <el-table-column label="违规订单号" align="center" prop="violationOrd"/>
<el-table-column label="违规类型" align="center" prop="violationType" /> <el-table-column label="规则Id" align="center" prop="creditRuleId"/>
<!-- <el-table-column label="违规类型" align="center" prop="violationType"/>-->
<el-table-column label="订单金额" align="center" prop="violationSum"/> <el-table-column label="订单金额" align="center" prop="violationSum"/>
<el-table-column label="违规级别" align="center" prop="violationLevel" /> <!-- <el-table-column label="违规级别" align="center" prop="violationLevel"/>-->
<el-table-column label="操作" align="center" width="200" class-name="small-padding fixed-width"> <el-table-column label="操作" align="center" width="200" class-name="small-padding fixed-width">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
@ -99,21 +116,24 @@
type="text" type="text"
icon="el-icon-view" icon="el-icon-view"
@click="handleDetail(scope.row)" @click="handleDetail(scope.row)"
>{{ $t('common.button.detail') }}</el-button> >{{ $t('common.button.detail') }}
</el-button>
<el-button <el-button
size="mini" size="mini"
type="text" type="text"
icon="el-icon-edit" icon="el-icon-edit"
@click="handleUpdate(scope.row)" @click="handleUpdate(scope.row)"
v-hasPermi="['business:userCreditRecord:edit']" v-hasPermi="['business:userCreditRecord:edit']"
>{{ $t('common.button.edit') }}</el-button> >{{ $t('common.button.edit') }}
</el-button>
<el-button <el-button
size="mini" size="mini"
type="text" type="text"
icon="el-icon-delete" icon="el-icon-delete"
@click="handleDelete(scope.row)" @click="handleDelete(scope.row)"
v-hasPermi="['business:userCreditRecord:remove']" v-hasPermi="['business:userCreditRecord:remove']"
>{{ $t('common.button.delete') }}</el-button> >{{ $t('common.button.delete') }}
</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@ -129,8 +149,11 @@
<!-- 添加或修改信用记录对话框 --> <!-- 添加或修改信用记录对话框 -->
<el-dialog :title="title" :visible.sync="open" width="700px" append-to-body> <el-dialog :title="title" :visible.sync="open" width="700px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="auto"> <el-form ref="form" :model="form" :rules="rules" label-width="auto">
<el-form-item label="违规业务" prop="violationBus"> <el-form-item label="用户Id" prop="userId">
<el-input v-model="form.violationBus" placeholder="请输入违规业务" /> <el-input v-model="form.userId" placeholder="请输入用户Id"/>
</el-form-item>
<el-form-item label="规则触发Id" prop="violationBus">
<el-input v-model="form.creditRuleId" placeholder="请输入违规业务"/>
</el-form-item> </el-form-item>
<el-form-item label="违规订单号" prop="violationOrd"> <el-form-item label="违规订单号" prop="violationOrd">
<el-input v-model="form.violationOrd" placeholder="请输入违规订单号"/> <el-input v-model="form.violationOrd" placeholder="请输入违规订单号"/>
@ -138,15 +161,12 @@
<el-form-item label="订单金额" prop="violationSum"> <el-form-item label="订单金额" prop="violationSum">
<el-input v-model="form.violationSum" placeholder="请输入订单金额"/> <el-input v-model="form.violationSum" placeholder="请输入订单金额"/>
</el-form-item> </el-form-item>
<el-form-item label="违规类型" prop="violationSum">
<el-input v-model="form.violationType" placeholder="请输入违规类型" />
</el-form-item>
<el-form-item label="违规级别" prop="violationLevel">
<el-input v-model="form.violationLevel" placeholder="请输入违规级别" />
</el-form-item>
</el-form> </el-form>
# <div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button :loading="buttonLoading" type="primary" @click="submitForm">{{ $t('common.button.confirm') }}</el-button> <el-button :loading="buttonLoading" type="primary" @click="submitForm">{{
$t('common.button.confirm')
}}
</el-button>
<el-button @click="cancel">{{ $t('common.button.cancel') }}</el-button> <el-button @click="cancel">{{ $t('common.button.cancel') }}</el-button>
</div> </div>
</el-dialog> </el-dialog>
@ -154,21 +174,30 @@
<!-- 信用记录详情 --> <!-- 信用记录详情 -->
<el-dialog :title="title" :visible.sync="detailOpen" width="700px" append-to-body> <el-dialog :title="title" :visible.sync="detailOpen" width="700px" append-to-body>
<el-form ref="form" :model="form" label-width="auto"> <el-form ref="form" :model="form" label-width="auto">
<el-form-item label="违规业务:"> <el-form-item label="用户Id:">
{{form.violationBus}} {{ form.userId }}
</el-form-item> </el-form-item>
<el-form-item label="用户名:">
{{ form.userName }}
</el-form-item>
<!-- <el-form-item label="违规业务:">-->
<!-- {{ form.violationBus }}-->
<!-- </el-form-item>-->
<el-form-item label="违规订单号:"> <el-form-item label="违规订单号:">
{{ form.violationOrd }} {{ form.violationOrd }}
</el-form-item> </el-form-item>
<el-form-item label="违规订单号:">
{{ form.creditRuleId }}
</el-form-item>
<el-form-item label="订单金额:"> <el-form-item label="订单金额:">
{{ form.violationSum }} {{ form.violationSum }}
</el-form-item> </el-form-item>
<el-form-item label="违规类型:"> <!-- <el-form-item label="违规类型:">-->
{{form.violationType}} <!-- {{ form.violationType }}-->
</el-form-item> <!-- </el-form-item>-->
<el-form-item label="违规级别:"> <!-- <el-form-item label="违规级别:">-->
{{form.violationLevel}} <!-- {{ form.violationLevel }}-->
</el-form-item> <!-- </el-form-item>-->
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button @click="cancel">{{ $t('common.button.close') }}</el-button> <el-button @click="cancel">{{ $t('common.button.close') }}</el-button>
@ -178,7 +207,13 @@
</template> </template>
<script> <script>
import { listUserCreditRecord, getUserCreditRecord, delUserCreditRecord, addUserCreditRecord, updateUserCreditRecord } from "@/api/business/userCreditRecord"; import {
listUserCreditRecord,
getUserCreditRecord,
delUserCreditRecord,
addUserCreditRecord,
updateUserCreditRecord
} from "@/api/business/userCreditRecord";
export default { export default {
name: "UserCreditRecord", name: "UserCreditRecord",
@ -216,26 +251,21 @@ export default {
violationType: undefined, violationType: undefined,
violationSum: undefined, violationSum: undefined,
violationLevel: undefined, violationLevel: undefined,
creditRuleId: undefined,
}, },
// //
form: {}, form: {},
// //
rules: { rules: {
violationBus: [ userId: [
{ required: true, message: "违规业务不能为空", trigger: "blur" } {required: true, message: "用户Id不能为空", trigger: "blur"}
], ],
violationOrd: [ violationOrd: [
{required: true, message: "违规订单号不能为空", trigger: "blur"} {required: true, message: "违规订单号不能为空", trigger: "blur"}
], ],
violationType: [
{ required: true, message: "违规类型不能为空", trigger: "change" }
],
violationSum: [ violationSum: [
{required: true, message: "订单金额不能为空", trigger: "blur"} {required: true, message: "订单金额不能为空", trigger: "blur"}
], ],
violationLevel: [
{ required: true, message: "违规级别不能为空", trigger: "blur" }
],
} }
}; };
}, },

Loading…
Cancel
Save