Commit b098364c by wusiyi

feat: 收款账户管理添加主要业务下拉

parent 0941c8a3
......@@ -7,27 +7,32 @@ export function getSubjectListApi(params) {
return axios.get('/pay/businessPayRecord/subjectList', params)
}
// 获取账户类型
// 收款账户管理 获取账户类型
export function getAccountTypeListApi() {
return axios.get('/baseProceedsAccount/accountTypeList')
}
// 获取收款方式
// 收款账户管理 获取收款方式
export function getReceiverTypeListApi() {
return axios.get('/baseProceedsAccount/receiverTypeList')
}
// 获取币种
// 收款账户管理 获取收款方式
export function getBusinessTypeListApi() {
return axios.get('/baseProceedsAccount/businessTypeList')
}
// 收款账户管理 获取币种
export function getCurrencyTypeListApi() {
return axios.get('/manage/rest/baseCurrencyInfo/uniList')
}
// 获取安全设置
// 收款账户管理 获取安全设置
export function getSecuritySettingApi() {
return axios.get('/sysSecuritySettings/getOne')
}
// 获取收款账户列表
// 收款账户管理 获取收款账户列表
export function getBaseProceedsAccountListApi(params) {
return axios.post('/baseProceedsAccount/list_page', params)
}
......@@ -42,32 +47,32 @@ export function getBaseProceedsAccountLogApi(id) {
return axios.get(`/baseProceedsAccountLog/getList?relaId=${id}`)
}
// 更新收款账户启用状态
// 收款账户管理 更新收款账户启用状态
export function updateBaseProceedsAccountEnableApi(params) {
return axios.post('/baseProceedsAccount/updateEnable', params)
}
// 新增收款账户
// 收款账户管理 新增收款账户
export function addBaseProceedsAccountApi(params) {
return axios.post('/baseProceedsAccount/add', params)
}
// 更新收款账户
// 收款账户管理 更新收款账户
export function updateBaseProceedsAccountApi(params) {
return axios.post('/baseProceedsAccount/update', params)
}
// 删除收款账户
// 收款账户管理 删除收款账户
export function deleteBaseProceedsAccountApi(params) {
return axios.post('/baseProceedsAccount/delete', params)
}
// 发送手机验证码
// 收款账户管理 发送手机验证码
export function sendPhoneCodeApi(params) {
return axios.post('/sysSecuritySettings/sendPhoneCode', params)
}
// 发送邮箱验证码
// 收款账户管理 发送邮箱验证码
export function sendEmailCodeApi(email, operateType) {
return axios.get(
`/sysSecuritySettings/sendEmailCode?email=${email}&operateType=${operateType}`
......
......@@ -48,24 +48,6 @@
label-width="100px"
:inline="true"
size="mini">
<el-form-item label="账户名称" prop="name">
<el-input
v-model="addFormData.name"
placeholder="请输入账户名称"
clearable />
</el-form-item>
<el-form-item label="账号" prop="accountNumber">
<el-input
v-model="addFormData.accountNumber"
placeholder="请输入账号"
clearable />
</el-form-item>
<el-form-item label="绑定账户" prop="linkAccount">
<el-input
v-model="addFormData.linkAccount"
placeholder="请输入绑定账户"
clearable />
</el-form-item>
<el-form-item label="账户类型" prop="accountType">
<el-select
v-model="addFormData.accountType"
......@@ -78,7 +60,6 @@
:value="item.code"></el-option>
</el-select>
</el-form-item>
<el-form-item
label="银行卡开户行"
prop="openBank"
......@@ -91,6 +72,18 @@
placeholder="请输入开户行"
clearable />
</el-form-item>
<el-form-item label="账户名称" prop="name">
<el-input
v-model="addFormData.name"
placeholder="请输入账户名称"
clearable />
</el-form-item>
<el-form-item label="账号" prop="accountNumber">
<el-input
v-model="addFormData.accountNumber"
placeholder="请输入账号"
clearable />
</el-form-item>
<el-form-item label="收款方式" prop="receiverType">
<el-select
v-model="addFormData.receiverType"
......@@ -103,6 +96,18 @@
:value="item.code"></el-option>
</el-select>
</el-form-item>
<el-form-item label="主要业务" prop="operation">
<el-select
v-model="addFormData.operation"
placeholder="请选择主要业务"
style="width: 100%">
<el-option
v-for="item in businessTypeList"
:key="item.key"
:label="item.value"
:value="item.key"></el-option>
</el-select>
</el-form-item>
<el-form-item label="币种" prop="currencyType">
<el-select
v-model="addFormData.currencyType"
......@@ -116,6 +121,7 @@
:value="item.currencyCode"></el-option>
</el-select>
</el-form-item>
<el-form-item label="日限额" prop="daySumLimited">
<el-input-number
:precision="2"
......@@ -133,11 +139,13 @@
placeholder="请输入月限额"
type="number" />
</el-form-item>
<el-form-item label="主要业务" prop="operation">
<el-input
v-model="addFormData.operation"
placeholder="请输入主要业务"
clearable />
<el-form-item label="排序" prop="sort">
<el-input-number
v-model="addFormData.sort"
placeholder="请输入排序"
:min="1"
type="number" />
</el-form-item>
<el-form-item label="启用状态" prop="isEnable">
<el-switch
......@@ -167,15 +175,6 @@
:labelStyle="{ width: '120px' }"
:contentStyle="{ width: '200px', textAlign: 'center' }"
border>
<el-descriptions-item label="账户名称">
{{ detailFormData.name }}
</el-descriptions-item>
<el-descriptions-item label="账号">
{{ detailFormData.accountNumber }}
</el-descriptions-item>
<el-descriptions-item label="绑定账户">
{{ detailFormData.linkAccount }}
</el-descriptions-item>
<el-descriptions-item
label="账户类型"
:contentStyle="{ textAlign: 'center' }">
......@@ -187,6 +186,12 @@
<el-descriptions-item label="银行卡开户行">
{{ detailFormData.openBank || '-' }}
</el-descriptions-item>
<el-descriptions-item label="账户名称">
{{ detailFormData.name }}
</el-descriptions-item>
<el-descriptions-item label="账号">
{{ detailFormData.accountNumber }}
</el-descriptions-item>
<el-descriptions-item label="收款方式">
{{
receiverTypeList.find((i) => i.code === detailFormData.receiverType)
......@@ -206,6 +211,12 @@
')'
}}
</el-descriptions-item>
<el-descriptions-item label="主要业务">
{{
businessTypeList.find((i) => i.key === detailFormData.operation)
?.value
}}
</el-descriptions-item>
<el-descriptions-item label="日限额">
{{ detailFormData.daySumLimited }}
</el-descriptions-item>
......@@ -219,9 +230,11 @@
</el-tag>
<el-tag type="danger" size="small" v-else>禁用</el-tag>
</el-descriptions-item>
<el-descriptions-item label="主要业务" span="2">
{{ detailFormData.operation }}
<el-descriptions-item label="排序">
{{ detailFormData.sort }}
</el-descriptions-item>
<el-descriptions-item />
<el-descriptions-item label="创建时间">
{{ detailFormData.createTime }}
</el-descriptions-item>
......@@ -237,8 +250,18 @@
<li
v-for="(item, index) in logFormData"
:key="index"
style="margin-bottom: 10px">
({{ index + 1 }})、{{ item.description }}
style="
margin-bottom: 10px;
display: flex;
align-items: flex-start;
vertical-align: middle;
">
<span class="date">
{{ item.createTime }}
</span>
<span style="flex: 1; vertical-align: middle">
{{ item.description }}
</span>
</li>
</ul>
</el-dialog>
......@@ -384,7 +407,8 @@ import {
updateBaseProceedsAccountApi,
deleteBaseProceedsAccountApi,
sendPhoneCodeApi,
sendEmailCodeApi
sendEmailCodeApi,
getBusinessTypeListApi
} from '@/common/api/user/user.js'
export default {
......@@ -398,14 +422,14 @@ export default {
name: '',
accountNumber: '',
accountType: '',
linkAccount: '',
openBank: '',
receiverType: '',
currencyType: '',
daySumLimited: '',
monthlySumLimited: '',
operation: '',
isEnable: false
isEnable: false,
sort: null
}
return {
select: '',
......@@ -414,6 +438,7 @@ export default {
accountTypeList: [],
receiverTypeList: [],
currencyTypeList: [],
businessTypeList: [],
addDialog: false,
addFormData: { ...initialFormData }, // 使用初始化的表单数据
addFormRules: {
......@@ -421,14 +446,16 @@ export default {
{ required: true, message: '请输入账户名称', trigger: 'change' }
],
accountNumber: [
{ required: true, message: '请输入账号', trigger: 'change' }
{ required: true, message: '请输入账号', trigger: 'change' },
{
pattern: /^[a-zA-Z0-9]+$/,
message: '请输入正确的账号',
trigger: 'change'
}
],
accountType: [
{ required: true, message: '请选择账户类型', trigger: 'change' }
],
linkAccount: [
{ required: true, message: '请输入绑定账户', trigger: 'blur' }
],
openBank: [
{ required: true, message: '请输入开户行', trigger: 'blur' }
],
......@@ -477,10 +504,17 @@ export default {
}
],
operation: [
{ required: true, message: '请输主要业务', trigger: 'change' }
{ required: true, message: '请输选择主要业务', trigger: 'change' }
],
isEnable: [
{ required: true, message: '请选择启用状态', trigger: 'change' }
],
sort: [
{
pattern: /^[1-9]\d*$/,
message: '请输入大于0的整数',
trigger: 'blur'
}
]
},
detailVisible: false,
......@@ -523,6 +557,7 @@ export default {
this.getReceiverTypeList()
this.getCurrencyTypeList()
this.getSecuritySetting()
this.getBusinessTypeList()
},
computed: {
operateType() {
......@@ -563,21 +598,6 @@ export default {
)
},
{
label: '账户名称',
key: 'name',
width: '150'
},
{
label: '账号',
key: 'accountNumber',
width: '250'
},
{
label: '绑定账户',
key: 'linkAccount',
width: '150'
},
{
label: '账户类型',
key: 'accountType',
width: '100',
......@@ -592,9 +612,19 @@ export default {
width: '200'
},
{
label: '账户名称',
key: 'name',
width: '150'
},
{
label: '账号',
key: 'accountNumber',
width: ''
},
{
label: '收款方式',
key: 'receiverType',
width: '80',
width: '150',
render: (item) => {
return this.receiverTypeList.find(
(i) => i.code === item.receiverType
......@@ -602,9 +632,18 @@ export default {
}
},
{
label: '主要业务',
key: 'operation',
width: 200,
render: (item) => {
return this.businessTypeList.find((i) => i.key === item.operation)
?.value
}
},
{
label: '币种',
key: 'currencyType',
width: '130',
width: '200',
render: (item) => {
const i = this.currencyTypeList.find(
(i) => i.currencyCode === item.currencyType
......@@ -615,18 +654,14 @@ export default {
{
label: '日限额',
key: 'daySumLimited',
width: '120'
width: '150'
},
{
label: '月限额',
key: 'monthlySumLimited',
width: '120'
},
{
label: '主要业务',
key: 'operation',
width: ''
width: '150'
},
{
label: '相关操作',
key: '',
......@@ -662,9 +697,13 @@ export default {
queryformConfig() {
return [
{
prop: 'name',
type: 'input',
name: '账户名称'
prop: 'isEnable',
type: 'select',
name: '状态',
options: [
{ label: '启用', value: 1 },
{ label: '禁用', value: 0 }
]
},
{
prop: 'accountType',
......@@ -676,6 +715,11 @@ export default {
}))
},
{
prop: 'name',
type: 'input',
name: '账户名称'
},
{
prop: 'receiverType',
type: 'select',
name: '收款方式',
......@@ -694,13 +738,13 @@ export default {
}))
},
{
prop: 'isEnable',
prop: 'operation',
type: 'select',
name: '状态',
options: [
{ label: '启用', value: 1 },
{ label: '禁用', value: 0 }
]
name: '主要业务',
options: this.businessTypeList.map((item) => ({
label: item.value,
value: item.key
}))
}
]
}
......@@ -728,19 +772,32 @@ export default {
},
// 获取账户类型列表
async getAccountTypeList() {
const res = await getAccountTypeListApi()
this.accountTypeList = res.data
try {
const res = await getAccountTypeListApi()
this.accountTypeList = res.data
} catch (error) {
console.log(error)
}
},
// 收款方式
async getReceiverTypeList() {
const res = await getReceiverTypeListApi()
this.receiverTypeList = res.data
try {
const res = await getReceiverTypeListApi()
this.receiverTypeList = res.data
} catch (error) {
console.log(error)
}
},
// 币种列表
async getCurrencyTypeList() {
const res = await getCurrencyTypeListApi()
this.currencyTypeList = res.data
},
// 获取主要业务列表
async getBusinessTypeList() {
const res = await getBusinessTypeListApi()
this.businessTypeList = res.data
},
// 获取安全设置信息
async getSecuritySetting() {
const res = await getSecuritySettingApi()
......@@ -750,28 +807,40 @@ export default {
},
// 查询
async getList() {
this.loading = true
const { pageSize, currentPage } = this.paginationOptions
const res = await getBaseProceedsAccountListApi({
pageSize,
currentPage,
...this.queryFormData
})
this.sourceData = res.data.records
this.paginationOptions.total = res.data.total
this.loading = false
try {
this.loading = true
const { pageSize, currentPage } = this.paginationOptions
const res = await getBaseProceedsAccountListApi({
pageSize,
currentPage,
...this.queryFormData
})
this.sourceData = res.data.records
this.paginationOptions.total = res.data.total
this.loading = false
} catch (error) {
console.log(error)
}
},
// 获取详情
async getDetails(id) {
const res = await getBaseProceedsAccountDetailApi(id)
this.detailFormData = res.data
this.detailVisible = true
try {
const res = await getBaseProceedsAccountDetailApi(id)
this.detailFormData = res.data
this.detailVisible = true
} catch (error) {
console.log(error)
}
},
// 获取日志
async getLog(id) {
const res = await getBaseProceedsAccountLogApi(id)
this.logFormData = res.data
this.logVisible = true
try {
const res = await getBaseProceedsAccountLogApi(id)
this.logFormData = res.data
this.logVisible = true
} catch (error) {
console.log(error)
}
},
// 提交
submit() {
......@@ -864,22 +933,26 @@ export default {
},
// 新增 提交
async addSubmit() {
const apiMethod =
this.type === 'add'
? addBaseProceedsAccountApi
: updateBaseProceedsAccountApi
const data = await apiMethod({
...this.addFormData,
checkType: this.currentMethod,
...this.securityFormData,
operateType: this.operateType
})
if (data) {
this.$message.success('新增成功')
this.addDialog = false
this.securityVisible = false
this.resetForm()
this.getList()
try {
const apiMethod =
this.type === 'add'
? addBaseProceedsAccountApi
: updateBaseProceedsAccountApi
const res = await apiMethod({
...this.addFormData,
checkType: this.currentMethod,
...this.securityFormData,
operateType: this.operateType
})
if (res.code === 200) {
this.$message.success(this.type === 'add' ? '新增成功' : '编辑成功')
this.addDialog = false
this.securityVisible = false
this.resetForm()
this.getList()
}
} catch (error) {
console.log(error)
}
},
......@@ -916,7 +989,6 @@ export default {
name: '',
accountNumber: '',
accountType: '',
linkAccount: '',
openBank: '',
receiverType: '',
currencyType: '',
......@@ -1142,4 +1214,11 @@ export default {
margin-left: 0;
}
}
.date::after {
content: '中';
display: inline-block;
width: 0;
opacity: 0;
margin-right: 10px;
}
</style>
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