import { request } from '@eciol/request'; import { replaceVariables } from '@eciol/shared'; import type { AccountManagementService } from './typing'; enum Api { GetAddressList = '/api/Address/List', CreateAddress = '/api/Address/Create', GetAddressDetail = '/api/Address/Get/{id}', EditAddress = '/api/Address/Edit', DeleteAddress = '/api/Address/Delete/{id}', GetBankAccountList = '/api/BankAccountManagement/QueryList', CreateBankAccount = '/api/BankAccountManagement/Create', GetBankAccountDetail = '/api/BankAccountManagement/Get/{id}', EditBankAccount = '/api/BankAccountManagement/Edit', DeleteBankAccount = '/api/BankAccountManagement/Delete/{id}', FreezeBankAccount = '/api/BankAccountManagement/Freeze/{id}', UnFreezeBankAccount = '/api/BankAccountManagement/UnFreeze/{id}', } /** * 查询地址列表 */ function getAddressList() { return request.post( { url: Api.GetAddressList, }, { showLoading: true, }, ); } /** * 新增地址 * @param data */ function createAddress(data: AccountManagementService.CreateAddressParams) { return request.post( { url: Api.CreateAddress, data, }, { showLoading: true, loadingTip: 'EMPTY', successMessage: '新增成功', successMessageMode: 'message', }, ); } /** * 删除地址 * @param id */ function deleteAddress(id: number) { return request.delete( { url: replaceVariables(Api.DeleteAddress, { id }), }, { showLoading: true, loadingTip: 'EMPTY', successMessage: '删除成功', successMessageMode: 'message', }, ); } /** * 获取地址详情 * @param id */ function getAddressDetail(id: number) { return request.get( { url: replaceVariables(Api.GetAddressDetail, { id }), }, { showLoading: true, }, ); } /** * 修改地址 * @param data */ function editAddress(data: AccountManagementService.CreateAddressParams) { return request.post( { url: Api.EditAddress, data, }, { showLoading: true, loadingTip: 'EMPTY', successMessage: '修改成功', successMessageMode: 'message', }, ); } /** * 查询银行账号列表 * @param data */ function getBankAccountList(data) { return request.post( { url: Api.GetBankAccountList, data, }, { showLoading: true, }, ); } /** * 删除银行账号 * @param id */ function deleteBankAccount(id: number) { return request.delete( { url: replaceVariables(Api.DeleteBankAccount, { id }), }, { showLoading: true, loadingTip: 'EMPTY', successMessage: '删除成功', successMessageMode: 'message', }, ); } /** * 冻结银行账号 * @param id */ function freezeBankAccount(id: number) { return request.post( { url: replaceVariables(Api.FreezeBankAccount, { id }), }, { showLoading: true, loadingTip: 'EMPTY', successMessage: '冻结成功', successMessageMode: 'message', }, ); } /** * 解冻银行账号 * @param id */ function unFreezeBankAccount(id: number) { return request.post( { url: replaceVariables(Api.UnFreezeBankAccount, { id }), }, { showLoading: true, loadingTip: 'EMPTY', successMessage: '解冻成功', successMessageMode: 'message', }, ); } /** * 新增银行账号 * @param data */ function createBankAccount(data: AccountManagementService.CreateOrEditBankAccountParams) { return request.post( { url: Api.CreateBankAccount, data, }, { showLoading: true, loadingTip: 'EMPTY', successMessage: '新增成功', successMessageMode: 'message', }, ); } /** * 修改银行账号 * @param data */ function editBankAccount(data: AccountManagementService.CreateOrEditBankAccountParams) { return request.post( { url: Api.EditBankAccount, data, }, { showLoading: true, loadingTip: 'EMPTY', successMessage: '修改成功', successMessageMode: 'message', }, ); } /** * 获取银行账号详情 * @param id */ function getBankAccountDetail(id: number) { return request.get( { url: replaceVariables(Api.GetBankAccountDetail, { id }), }, { showLoading: true, }, ); } export { createAddress, createBankAccount, deleteAddress, deleteBankAccount, editAddress, editBankAccount, freezeBankAccount, getAddressDetail, getAddressList, getBankAccountDetail, getBankAccountList, unFreezeBankAccount, };