地址管理

退款列表
This commit is contained in:
邱贞招 2024-11-09 16:27:28 +08:00
parent bd636f5d65
commit b42fdf3e86
10 changed files with 1206 additions and 237 deletions

44
src/api/system/address.js Normal file
View File

@ -0,0 +1,44 @@
import request from '@/utils/request'
// 查询用户地址列表
export function listAddress(query) {
return request({
url: '/system/address/list',
method: 'get',
params: query
})
}
// 查询用户地址详细
export function getAddress(id) {
return request({
url: '/system/address/' + id,
method: 'get'
})
}
// 新增用户地址
export function addAddress(data) {
return request({
url: '/system/address',
method: 'post',
data: data
})
}
// 修改用户地址
export function updateAddress(data) {
return request({
url: '/system/address',
method: 'put',
data: data
})
}
// 删除用户地址
export function delAddress(id) {
return request({
url: '/system/address/' + id,
method: 'delete'
})
}

44
src/api/system/refund.js Normal file
View File

@ -0,0 +1,44 @@
import request from '@/utils/request'
// 查询退款订单列表
export function listRefund(query) {
return request({
url: '/system/refund/list',
method: 'get',
params: query
})
}
// 查询退款订单详细
export function getRefund(id) {
return request({
url: '/system/refund/' + id,
method: 'get'
})
}
// 新增退款订单
export function addRefund(data) {
return request({
url: '/system/refund',
method: 'post',
data: data
})
}
// 修改退款订单
export function updateRefund(data) {
return request({
url: '/system/refund',
method: 'put',
data: data
})
}
// 删除退款订单
export function delRefund(id) {
return request({
url: '/system/refund/' + id,
method: 'delete'
})
}

View File

@ -4,7 +4,7 @@ import { parseStrEmpty } from "@/utils/ruoyi";
// 查询用户列表
export function listUser(query) {
return request({
url: '/system/user/list',
url: '/user/user/list',
method: 'get',
params: query
})
@ -13,7 +13,7 @@ export function listUser(query) {
// 查询用户详细
export function getUser(userId) {
return request({
url: '/system/user/' + parseStrEmpty(userId),
url: '/user/user/' + parseStrEmpty(userId),
method: 'get'
})
}
@ -21,7 +21,7 @@ export function getUser(userId) {
// 新增用户
export function addUser(data) {
return request({
url: '/system/user',
url: '/user/user',
method: 'post',
data: data
})
@ -30,7 +30,7 @@ export function addUser(data) {
// 修改用户
export function updateUser(data) {
return request({
url: '/system/user',
url: '/user/user',
method: 'put',
data: data
})
@ -39,7 +39,7 @@ export function updateUser(data) {
// 删除用户
export function delUser(userId) {
return request({
url: '/system/user/' + userId,
url: '/user/user/' + userId,
method: 'delete'
})
}
@ -51,7 +51,7 @@ export function resetUserPwd(userId, password) {
password
}
return request({
url: '/system/user/resetPwd',
url: '/user/user/resetPwd',
method: 'put',
data: data
})
@ -64,7 +64,7 @@ export function changeUserStatus(userId, status) {
status
}
return request({
url: '/system/user/changeStatus',
url: '/user/user/changeStatus',
method: 'put',
data: data
})
@ -73,7 +73,7 @@ export function changeUserStatus(userId, status) {
// 查询用户个人信息
export function getUserProfile() {
return request({
url: '/system/user/profile',
url: '/user/user/profile',
method: 'get'
})
}
@ -81,7 +81,7 @@ export function getUserProfile() {
// 修改用户个人信息
export function updateUserProfile(data) {
return request({
url: '/system/user/profile',
url: '/user/user/profile',
method: 'put',
data: data
})
@ -94,7 +94,7 @@ export function updateUserPwd(oldPassword, newPassword) {
newPassword
}
return request({
url: '/system/user/profile/updatePwd',
url: '/user/user/profile/updatePwd',
method: 'put',
params: data
})
@ -103,7 +103,7 @@ export function updateUserPwd(oldPassword, newPassword) {
// 用户头像上传
export function uploadAvatar(data) {
return request({
url: '/system/user/profile/avatar',
url: '/user/user/profile/avatar',
method: 'post',
headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
data: data
@ -113,7 +113,7 @@ export function uploadAvatar(data) {
// 查询授权角色
export function getAuthRole(userId) {
return request({
url: '/system/user/authRole/' + userId,
url: '/user/user/authRole/' + userId,
method: 'get'
})
}
@ -121,7 +121,7 @@ export function getAuthRole(userId) {
// 保存授权角色
export function updateAuthRole(data) {
return request({
url: '/system/user/authRole',
url: '/user/user/authRole',
method: 'put',
params: data
})
@ -130,7 +130,7 @@ export function updateAuthRole(data) {
// 查询部门下拉树结构
export function deptTreeSelect() {
return request({
url: '/system/user/deptTree',
url: '/user/user/deptTree',
method: 'get'
})
}

View File

@ -79,8 +79,8 @@
<template slot-scope="scope">
<el-switch
v-model="scope.row.status"
active-value="1"
inactive-value="0"
active-value="0"
inactive-value="1"
@change="handleStatusChange(scope.row)"
></el-switch>
</template>

View File

@ -0,0 +1,373 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="用户" prop="userName">
<el-input
v-model="queryParams.userName"
placeholder="请输入用户"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="收货人" prop="realName">
<el-input
v-model="queryParams.realName"
placeholder="请输入收货人姓名"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label-width="90" label="收货人电话" prop="phone">
<el-input
v-model="queryParams.phone"
placeholder="请输入收货人电话"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label-width="90" label="收货人地址" prop="detail">
<el-input
v-model="queryParams.detail"
placeholder="请输入收货人地址"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['system:address:add']"
>新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="success"
plain
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['system:address:edit']"
>修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['system:address:remove']"
>删除</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['system:address:export']"
>导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="addressList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<!-- <el-table-column label="用户地址id" align="center" prop="id" />-->
<el-table-column label="用户" align="center" prop="userName" />
<el-table-column label="收货人姓名" align="center" prop="realName" />
<el-table-column label="收货人电话" align="center" prop="phone" />
<el-table-column label="收货人所在省" align="center" prop="province" />
<el-table-column label="收货人所在市" align="center" prop="city" />
<!-- <el-table-column label="城市id" align="center" prop="cityId" />-->
<el-table-column label="收货人所在区" align="center" prop="district" />
<el-table-column label="收货人详细地址" align="center" prop="detail" />
<el-table-column label="邮编" align="center" prop="postCode" />
<el-table-column label="位置" align="center">
<template slot-scope="scope">
<a
:href="`https://uri.amap.com/marker?position=${scope.row.longitude},${scope.row.latitude}`"
target="_blank"
class="link-type">
{{ scope.row.longitude }}, {{ scope.row.latitude }}
</a>
</template>
</el-table-column>
<el-table-column label="是否默认" align="center" prop="isDefault" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['system:address:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['system:address:remove']"
>删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改用户地址对话框 -->
<el-dialog :title="title" :visible.sync="open" width="800px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="90px">
<el-form-item label="用户" prop="userName">
<el-input v-model="form.userName" placeholder="请输入用户" />
</el-form-item>
<el-form-item label="收货人姓名" prop="realName">
<el-input v-model="form.realName" placeholder="请输入收货人姓名" />
</el-form-item>
<el-form-item label="收货人电话" prop="phone">
<el-input v-model="form.phone" placeholder="请输入收货人电话" />
</el-form-item>
<!-- <el-form-item label="收货人所在省" prop="province">-->
<!-- <el-input v-model="form.province" placeholder="请输入收货人所在省" />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="收货人所在市" prop="city">-->
<!-- <el-input v-model="form.city" placeholder="请输入收货人所在市" />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="城市id" prop="cityId">-->
<!-- <el-input v-model="form.cityId" placeholder="请输入城市id" />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="收货人所在区" prop="district">-->
<!-- <el-input v-model="form.district" placeholder="请输入收货人所在区" />-->
<!-- </el-form-item>-->
<el-form-item label="收货人详细地址" prop="detail">
<el-input v-model="form.detail" placeholder="请输入收货人详细地址" />
</el-form-item>
<el-form-item label="邮编" prop="postCode">
<el-input v-model="form.postCode" placeholder="请输入邮编" />
</el-form-item>
<!-- <el-form-item label="经度" prop="longitude">-->
<!-- <el-input v-model="form.longitude" placeholder="请输入经度" />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="纬度" prop="latitude">-->
<!-- <el-input v-model="form.latitude" placeholder="请输入纬度" />-->
<!-- </el-form-item>-->
<el-form-item label="是否默认" prop="isDefault">
<template>
<el-radio v-model="form.isDefault" label="1"></el-radio>
<el-radio v-model="form.isDefault" label="0"></el-radio>
</template>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { listAddress, getAddress, delAddress, addAddress, updateAddress } from "@/api/system/address";
export default {
name: "Address",
data() {
return {
//
loading: true,
//
ids: [],
//
single: true,
//
multiple: true,
//
showSearch: true,
//
total: 0,
//
addressList: [],
//
title: "",
//
open: false,
//
queryParams: {
pageNum: 1,
pageSize: 10,
uid: null,
realName: null,
phone: null,
province: null,
city: null,
cityId: null,
district: null,
detail: null,
postCode: null,
longitude: null,
latitude: null,
isDefault: null,
},
//
form: {},
//
rules: {
uid: [
{ required: true, message: "用户id不能为空", trigger: "blur" }
],
province: [
{ required: true, message: "收货人所在省不能为空", trigger: "blur" }
],
city: [
{ required: true, message: "收货人所在市不能为空", trigger: "blur" }
],
district: [
{ required: true, message: "收货人所在区不能为空", trigger: "blur" }
],
detail: [
{ required: true, message: "收货人详细地址不能为空", trigger: "blur" }
],
postCode: [
{ required: true, message: "邮编不能为空", trigger: "blur" }
],
isDefault: [
{ required: true, message: "是否默认不能为空", trigger: "blur" }
],
isDel: [
{ required: true, message: "是否删除不能为空", trigger: "blur" }
],
}
};
},
created() {
this.getList();
},
methods: {
/** 查询用户地址列表 */
getList() {
this.loading = true;
listAddress(this.queryParams).then(response => {
this.addressList = response.rows;
this.total = response.total;
this.loading = false;
});
},
//
cancel() {
this.open = false;
this.reset();
},
//
reset() {
this.form = {
id: null,
uid: null,
realName: null,
phone: null,
province: null,
city: null,
cityId: null,
district: null,
detail: null,
postCode: null,
longitude: null,
latitude: null,
isDefault: "1",
isDel: null,
createTime: null,
updateTime: null
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
//
handleSelectionChange(selection) {
this.ids = selection.map(item => item.id)
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加用户地址";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const id = row.id || this.ids
getAddress(id).then(response => {
this.form = response.data;
this.open = true;
this.title = "修改用户地址";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.form.id != null) {
updateAddress(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
} else {
addAddress(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal.confirm('是否确认删除用户地址编号为"' + ids + '"的数据项?').then(function() {
return delAddress(ids);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
this.download('system/address/export', {
...this.queryParams
}, `address_${new Date().getTime()}.xlsx`)
}
}
};
</script>

View File

@ -4,12 +4,13 @@
<el-form-item label="区域名称" prop="areaName">
<el-input v-model="queryParams.areaName" placeholder="请输入区域名称" clearable @keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item label="经度" prop="longitude">
<el-input v-model="queryParams.longitude" placeholder="请输入经度" clearable @keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item label="纬度" prop="latitude">
<el-input v-model="queryParams.latitude" placeholder="请输入纬度" clearable @keyup.enter.native="handleQuery" />
</el-form-item>
<!-- <el-form-item label="经度" prop="longitude">-->
<!-- <el-input v-model="queryParams.longitude" placeholder="请输入经度" clearable @keyup.enter.native="handleQuery" />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="纬度" prop="latitude">-->
<!-- <el-input v-model="queryParams.latitude" placeholder="请输入纬度" clearable @keyup.enter.native="handleQuery" />-->
<!-- </el-form-item>-->
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
@ -44,13 +45,27 @@
<!-- <el-table-column label="边界值" align="center" prop="boundaryStr" />-->
<el-table-column label="经度" align="center" prop="longitude" />
<el-table-column label="纬度" align="center" prop="latitude" />
<el-table-column label="状态" align="center" prop="status" />
<el-table-column label="运营时间" align="center" prop="areaTime" />
<el-table-column label="运营区域外断电" align="center" prop="areaOutOutage" />
<el-table-column label="状态" align="center" key="status">
<template slot-scope="scope">
<el-switch v-model="scope.row.status" active-value="0" inactive-value="1"
@change="handleStatusChange(scope.row)"></el-switch>
</template>
</el-table-column>
<el-table-column label="运营时间" align="center" prop="areaTime">
<template slot-scope="scope">
<dict-tag :options="dict.type.et_operating_area_time" :value="scope.row.areaTime"/>
</template>
</el-table-column>
<el-table-column label="运营区域外断电" align="center" prop="areaOutOutage" >
<template slot-scope="scope">
<dict-tag :options="dict.type.area_out_outage" :value="scope.row.areaOutOutage"/>
</template>
</el-table-column>
<!-- <el-table-column label="电子围栏外还车调度:0-关闭1-开启" align="center" prop="areaOutDispatch" />-->
<el-table-column label="安全协议" align="center" prop="agreement" />
<el-table-column label="运营开始时间" align="center" prop="areaTimeStart" />
<el-table-column label="运营结束时间" align="center" prop="areaTimeEnd" />
<!-- <el-table-column label="运营开始时间" align="center" prop="areaTimeStart" />-->
<!-- <el-table-column label="运营结束时间" align="center" prop="areaTimeEnd" />-->
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
@ -117,6 +132,7 @@ import { listArea, getArea, delArea, addArea, updateArea } from "@/api/system/ar
export default {
name: "Area",
components: { AreaMap },
dicts: ['et_operating_area_time','area_out_outage'],
data() {
return {
//
@ -175,6 +191,24 @@ export default {
this.getList();
},
methods: {
handleStatusChange(row) {
let text = row.status === "0" ? "启用" : "停用";
this.$modal.confirm('确认要"' + text + row.areaName + '"运营区吗?').then(function () {
let data = {
areaId: row.areaId,
status: row.status,
deptId: row.deptId
}
updateArea(data).then(response => {
this.getList();
});
}).then(() => {
this.$modal.msgSuccess(text + "成功");
}).catch(function () {
row.status = row.status === "0" ? "1" : "0";
});
},
/** 查询运营区列表 */
getList() {
this.loading = true;

View File

@ -118,8 +118,15 @@
<el-form-item label="车型" prop="model">
<el-input v-model="form.model" placeholder="请输入车型" />
</el-form-item>
<el-form-item v-if="userName == 'admin'" label="品牌商" prop="brand">
<treeselect v-model="form.brand" :options="deptOptions" :show-count="true" placeholder="选择上级品牌商" />
<el-form-item label="品牌商" prop="brandId">
<el-select v-model="form.brandId" placeholder="请选择品牌商" clearable>
<el-option
v-for="item in brandList"
:key="item.brandId"
:label="item.name"
:value="item.brandId"
/>
</el-select>
</el-form-item>
<el-form-item label="满电电压(V)" label-width="90" prop="fullVoltage">
<el-input style="width: 85%" v-model="form.fullVoltage" placeholder="请输入满电电压" />
@ -147,6 +154,7 @@ import { listModel, getModel, delModel, addModel, updateModel } from "@/api/syst
import Treeselect from "@riophae/vue-treeselect";
import "@riophae/vue-treeselect/dist/vue-treeselect.css";
import { deptTreeSelect } from '@/api/system/user'
import {listBrand} from "@/api/system/brand";
export default {
name: "Model",
@ -170,6 +178,7 @@ export default {
total: 0,
//
modelList: [],
brandList: [],
//
title: "",
//
@ -181,6 +190,10 @@ export default {
model: null,
brand: null,
},
brandParams:{
pageNum: 1,
pageSize: 999
},
//
form: {},
//
@ -214,11 +227,16 @@ export default {
},
created() {
this.getList();
// this.getBrandList();
this.getBrandList();
console.log("当前用户信息:",this.$store.state.user.name)
this.userName = this.$store.state.user.name;
},
methods: {
getBrandList(){
listBrand(this.brandParams).then(response => {
this.brandList = response.rows;
});
},
/** 查询车辆型号列表 */
getList() {
this.loading = true;

View File

@ -207,16 +207,16 @@
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<el-form-item label="配送方式" prop="deliveryMethod">
<el-select v-model="queryParams.deliveryMethod" placeholder="请选择配送方式" clearable>
<el-option
v-for="dict in dict.type.rl_distribution_mode"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<!-- <el-form-item label="配送方式" prop="deliveryMethod">-->
<!-- <el-select v-model="queryParams.deliveryMethod" placeholder="请选择配送方式" clearable>-->
<!-- <el-option-->
<!-- v-for="dict in dict.type.rl_distribution_mode"-->
<!-- :key="dict.value"-->
<!-- :label="dict.label"-->
<!-- :value="dict.value"-->
<!-- />-->
<!-- </el-select>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="取车时间" prop="pickupTime">-->
<!-- <el-date-picker clearable-->
<!-- v-model="queryParams.pickupTime"-->
@ -225,14 +225,14 @@
<!-- placeholder="请选择取车时间">-->
<!-- </el-date-picker>-->
<!-- </el-form-item>-->
<el-form-item label="代理商id" prop="agentId">
<el-input
v-model="queryParams.agentId"
placeholder="请输入代理商id"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<!-- <el-form-item label="代理商id" prop="agentId">-->
<!-- <el-input-->
<!-- v-model="queryParams.agentId"-->
<!-- placeholder="请输入代理商id"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="店铺id" prop="storeId">-->
<!-- <el-input-->
<!-- v-model="queryParams.storeId"-->
@ -303,7 +303,7 @@
<el-table v-loading="loading" :data="orderList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="代理商" align="center" prop="agentName" />
<!-- <el-table-column label="代理商" align="center" prop="agentName" />-->
<el-table-column label="店铺" align="center" prop="storeName" />
<!-- <el-table-column label="订单id" align="center" prop="orderId" />-->
<el-table-column label="订单号" width="150" align="center" prop="orderNo" />
@ -362,11 +362,11 @@
<el-table-column label="服务费" align="center" prop="platformServiceFee" />
<el-table-column label="运营商分账" align="center" prop="operatorDividend" />
<el-table-column label="支付渠道id" align="center" prop="payChannel" />
<el-table-column label="配送方式" align="center" prop="deliveryMethod">
<template slot-scope="scope">
<dict-tag :options="dict.type.rl_distribution_mode" :value="scope.row.deliveryMethod"/>
</template>
</el-table-column>
<!-- <el-table-column label="配送方式" align="center" prop="deliveryMethod">-->
<!-- <template slot-scope="scope">-->
<!-- <dict-tag :options="dict.type.rl_distribution_mode" :value="scope.row.deliveryMethod"/>-->
<!-- </template>-->
<!-- </el-table-column>-->
<el-table-column label="取车时间" align="center" prop="pickupTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.pickupTime, '{y}-{m}-{d}') }}</span>
@ -514,16 +514,16 @@
<el-form-item label="支付渠道id" prop="payChannel">
<el-input v-model="form.payChannel" placeholder="请输入支付渠道id" />
</el-form-item>
<el-form-item label="配送方式" prop="deliveryMethod">
<el-select v-model="form.deliveryMethod" placeholder="请选择配送方式">
<el-option
v-for="dict in dict.type.rl_distribution_mode"
:key="dict.value"
:label="dict.label"
:value="parseInt(dict.value)"
></el-option>
</el-select>
</el-form-item>
<!-- <el-form-item label="配送方式" prop="deliveryMethod">-->
<!-- <el-select v-model="form.deliveryMethod" placeholder="请选择配送方式">-->
<!-- <el-option-->
<!-- v-for="dict in dict.type.rl_distribution_mode"-->
<!-- :key="dict.value"-->
<!-- :label="dict.label"-->
<!-- :value="parseInt(dict.value)"-->
<!-- ></el-option>-->
<!-- </el-select>-->
<!-- </el-form-item>-->
<el-form-item label="取车时间" prop="pickupTime">
<el-date-picker clearable
v-model="form.pickupTime"
@ -532,9 +532,9 @@
placeholder="请选择取车时间">
</el-date-picker>
</el-form-item>
<el-form-item label="代理商id" prop="agentId">
<el-input v-model="form.agentId" placeholder="请输入代理商id" />
</el-form-item>
<!-- <el-form-item label="代理商id" prop="agentId">-->
<!-- <el-input v-model="form.agentId" placeholder="请输入代理商id" />-->
<!-- </el-form-item>-->
<el-form-item label="店铺id" prop="storeId">
<el-input v-model="form.storeId" placeholder="请输入店铺id" />
</el-form-item>

View File

@ -0,0 +1,307 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="代理商" prop="deptId" v-if="userName == 'admin' && !deptId">
<el-select
v-model="queryParams.deptId"
filterable
placeholder="选择代理商"
style="width: 120px"
clearable>
<el-option
v-for="item in deptOptions"
:key="item.deptId"
:label="item.deptName"
:value="item.deptId"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="运营区" prop="areaId" v-if="userName == 'admin' && !deptId">
<el-select v-model="queryParams.areaId" filterable placeholder="请选择运营区" clearable>
<el-option
v-for="item in areaOptions"
:key="item.areaId"
:label="item.areaName"
:value="item.areaId"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="退款单号" prop="refundNo">
<el-input
v-model="queryParams.refundNo"
placeholder="请输入退款单号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="关联订单" prop="orderNo">
<el-input
v-model="queryParams.orderNo"
placeholder="请输入关联订单"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="用户" prop="userName">
<el-input
v-model="queryParams.userName"
placeholder="请输入用户"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="退款金额" prop="amount">
<el-input
v-model="queryParams.amount"
placeholder="请输入退款金额"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="退款说明" prop="itemDesc">
<el-input
v-model="queryParams.itemDesc"
placeholder="请输入退款项目说明"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['system:refund:export']"
>导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="refundList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="区域" align="center" prop="areaName" />
<el-table-column label="退款单号" align="center" prop="refundNo" />
<el-table-column label="关联订单" align="center" prop="orderNo" />
<el-table-column label="用户" align="center" prop="userName" />
<el-table-column label="退款金额" align="center" prop="amount" />
<el-table-column label="退款原因" align="center" prop="reason" />
<el-table-column label="退款时间" align="center" prop="createTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.createTime, '{y}-{m}-{d} {h}:{i}:{s}') }}</span>
</template>
</el-table-column>
<el-table-column label="退款项目说明" align="center" prop="itemDesc" />
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改退款订单对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { listRefund, getRefund, delRefund, addRefund, updateRefund } from "@/api/system/refund";
// import { optionselect as getAreaOptionselect } from '@/api/system/area'
// import { listDept2 } from '@/api/system/dept'
export default {
name: "Refund",
props: {
// id
deptId: {
type: Number,
default: null,
}
},
data() {
return {
//
loading: true,
userName: undefined,
//
ids: [],
//
single: true,
//
multiple: true,
//
showSearch: true,
//
total: 0,
// 退
refundList: [],
areaOptions: [],
deptOptions:[],
//
title: "",
//
open: false,
//
queryParams: {
pageNum: 1,
pageSize: 20,
deptId: this.deptId,
refundNo: null,
orderNo: null,
userId: null,
amount: null,
itemDesc: null
},
//
form: {},
//
rules: {
orderNo: [
{ required: true, message: "关联订单不能为空", trigger: "blur" }
],
userId: [
{ required: true, message: "用户ID不能为空", trigger: "blur" }
],
}
};
},
created() {
console.log("当前用户信息:",this.$store.state.user.name)
this.userName = this.$store.state.user.name;
// this.getDeptList()
this.getList();
// this.getAreaList();
},
methods: {
// getDeptList() {
// listDept2({ status: "0", pageNum: 1, pageSize: 999 }).then((response) => {
// this.deptOptions = response.rows;
// });
// },
// /** */
// getAreaList() {
// getAreaOptionselect().then(response => {
// this.areaOptions = response.data;
// });
// },
/** 查询退款订单列表 */
getList() {
this.loading = true;
listRefund(this.queryParams).then(response => {
this.refundList = response.rows;
this.total = response.total;
this.loading = false;
});
},
//
cancel() {
this.open = false;
this.reset();
},
//
reset() {
this.form = {
id: null,
refundNo: null,
orderNo: null,
userId: null,
amount: null,
dispatchFee: null,
manageFee: null,
ridingFee: null,
appointmentFee: null,
reason: null,
createTime: null,
itemDesc: null
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
//
handleSelectionChange(selection) {
this.ids = selection.map(item => item.id)
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加退款订单";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const id = row.id || this.ids
getRefund(id).then(response => {
this.form = response.data;
this.open = true;
this.title = "修改退款订单";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.form.id != null) {
updateRefund(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
} else {
addRefund(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal.confirm('是否确认删除退款订单编号为"' + ids + '"的数据项?').then(function() {
return delRefund(ids);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
this.download('system/refund/export', {
...this.queryParams
}, `refund_${new Date().getTime()}.xlsx`)
}
}
};
</script>

View File

@ -1,6 +1,16 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="代理商" prop="deptId" v-if="userName == 'admin'">
<el-select v-model="queryParams.deptId" filterable placeholder="请选择代理商" clearable>
<el-option
v-for="item in deptOptions"
:key="item.deptId"
:label="item.deptName"
:value="item.deptId"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="提现单号" prop="withdrawNo">
<el-input
v-model="queryParams.withdrawNo"
@ -9,80 +19,16 @@
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="提现金额" prop="amount">
<el-input
v-model="queryParams.amount"
placeholder="请输入提现金额"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="运营商id" prop="deptId">
<el-input
v-model="queryParams.deptId"
placeholder="请输入运营商id"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="状态" prop="status">
<el-select v-model="queryParams.status" placeholder="请选择状态" clearable>
<el-form-item label="申请状态" prop="status">
<el-select v-model="queryParams.status" placeholder="请选择申请状态" clearable>
<el-option
v-for="dict in dict.type.rl_withdraw_status"
v-for="dict in dict.type.et_withdraw_status"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="申请人" prop="ownerName">
<el-input
v-model="queryParams.ownerName"
placeholder="请输入申请人"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="申请人id" prop="ownerId">
<el-input
v-model="queryParams.ownerId"
placeholder="请输入申请人id"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="手机号" prop="ownerPhone">
<el-input
v-model="queryParams.ownerPhone"
placeholder="请输入手机号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="服务费" prop="serviceCharge">
<el-input
v-model="queryParams.serviceCharge"
placeholder="请输入服务费"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="成本" prop="cost">
<el-input
v-model="queryParams.cost"
placeholder="请输入成本"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="打款方式" prop="paymentMethod">
<el-input
v-model="queryParams.paymentMethod"
placeholder="请输入打款方式"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
@ -90,7 +36,7 @@
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-col :span="1.5" v-if="userName != 'admin'">
<el-button
type="primary"
plain
@ -98,29 +44,17 @@
size="mini"
@click="handleAdd"
v-hasPermi="['system:withdraw:add']"
>新增</el-button>
>申请</el-button>
</el-col>
<el-col :span="1.5">
<el-col :span="1.5" v-if="userName != 'admin' && user.appUserId == null" >
<el-button
type="success"
plain
icon="el-icon-edit"
icon="el-icon-link"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['system:withdraw:edit']"
>修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['system:withdraw:remove']"
>删除</el-button>
@click="bandWxUser"
v-hasPermi="['system:withdraw:add']"
>绑定微信用户</el-button>
</el-col>
<el-col :span="1.5">
<el-button
@ -137,23 +71,29 @@
<el-table v-loading="loading" :data="withdrawList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<!-- <el-table-column label="提现id" align="center" prop="id" />-->
<!-- <el-table-column label="提现id" align="center" prop="id" />-->
<el-table-column label="代理商" align="center" prop="deptName" v-if="userName == 'admin'"/>
<el-table-column label="提现单号" align="center" prop="withdrawNo" />
<el-table-column label="提现金额" align="center" prop="amount" />
<!-- <el-table-column label="运营商id" align="center" prop="deptId" />-->
<el-table-column label="状态" align="center" prop="status">
<el-table-column label="提现金额:元" align="center" prop="amount" />
<el-table-column label="申请状态" align="center" prop="status">
<template slot-scope="scope">
<dict-tag :options="dict.type.rl_withdraw_status" :value="scope.row.status"/>
<dict-tag :options="dict.type.et_withdraw_status" :value="scope.row.status"/>
</template>
</el-table-column>
<el-table-column label="申请人" align="center" prop="ownerName" />
<el-table-column label="申请人id" align="center" prop="ownerId" />
<el-table-column label="手机号" align="center" prop="ownerPhone" />
<el-table-column label="服务费" align="center" prop="serviceCharge" />
<el-table-column label="成本" align="center" prop="cost" />
<el-table-column label="打款方式" align="center" prop="paymentMethod" />
<el-table-column label="申请人" align="center" prop="applicant" />
<el-table-column label="微信openid" align="center" prop="wxopenid" />
<el-table-column label="驳回原因" align="center" prop="rejectReason" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.createTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="回调状态" align="center" prop="callStatus">
<template slot-scope="scope">
<dict-tag :options="dict.type.et_call_status" :value="scope.row.callStatus"/>
</template>
</el-table-column>
<el-table-column v-if="userName == 'admin'" label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button v-if="scope.row.status == 0"
size="mini"
@ -163,22 +103,6 @@
v-hasPermi="['system:fault:query']"
>审核</el-button>
</template>
<!-- <template slot-scope="scope">-->
<!-- <el-button-->
<!-- size="mini"-->
<!-- type="text"-->
<!-- icon="el-icon-edit"-->
<!-- @click="handleUpdate(scope.row)"-->
<!-- v-hasPermi="['system:withdraw:edit']"-->
<!-- >修改</el-button>-->
<!-- <el-button-->
<!-- size="mini"-->
<!-- type="text"-->
<!-- icon="el-icon-delete"-->
<!-- @click="handleDelete(scope.row)"-->
<!-- v-hasPermi="['system:withdraw:remove']"-->
<!-- >删除</el-button>-->
<!-- </template>-->
</el-table-column>
</el-table>
@ -192,46 +116,17 @@
<!-- 添加或修改提现记录对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="提现单号" prop="withdrawNo">
<el-input v-model="form.withdrawNo" placeholder="请输入提现单号" />
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-form-item label="可用余额">
<span style="color: red;font-weight: 700">{{balance}}</span>
</el-form-item>
<el-form-item label="提现金额" prop="amount">
<el-input v-model="form.amount" placeholder="请输入提现金额" />
</el-form>
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-form-item label="提现金额:" prop="amount">
<el-input style="width: 40%" v-model="form.amount" placeholder="请输入提现金额" />
</el-form-item>
<el-form-item label="运营商id" prop="deptId">
<el-input v-model="form.deptId" placeholder="请输入运营商id" />
</el-form-item>
<el-form-item label="状态" prop="status">
<el-select v-model="form.status" placeholder="请选择状态">
<el-option
v-for="dict in dict.type.rl_withdraw_status"
:key="dict.value"
:label="dict.label"
:value="dict.value"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="驳回原因" prop="rejectReason">
<el-input v-model="form.rejectReason" type="textarea" placeholder="请输入内容" />
</el-form-item>
<el-form-item label="申请人" prop="ownerName">
<el-input v-model="form.ownerName" placeholder="请输入申请人" />
</el-form-item>
<el-form-item label="申请人id" prop="ownerId">
<el-input v-model="form.ownerId" placeholder="请输入申请人id" />
</el-form-item>
<el-form-item label="手机号" prop="ownerPhone">
<el-input v-model="form.ownerPhone" placeholder="请输入手机号" />
</el-form-item>
<el-form-item label="服务费" prop="serviceCharge">
<el-input v-model="form.serviceCharge" placeholder="请输入服务费" />
</el-form-item>
<el-form-item label="成本" prop="cost">
<el-input v-model="form.cost" placeholder="请输入成本" />
</el-form-item>
<el-form-item label="打款方式" prop="paymentMethod">
<el-input v-model="form.paymentMethod" placeholder="请输入打款方式" />
<el-form-item v-if="form.amount" label="提示:" style="font-weight: 300;color: red">
<span class="amoun-tips" >提现金额{{form.amount}}手续费{{formattedFee}} 实际到账{{actualAmount}} </span>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
@ -239,23 +134,126 @@
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
<!-- 添加或修改提现记录对话框 -->
<!-- <el-dialog :title="title2" :visible.sync="open2" width="500px" append-to-body>-->
<!-- <el-form ref="form2" :model="form2" :rules="rules2" label-width="120px">-->
<!-- <el-form-item label="手机号码" prop="phonenumber">-->
<!-- <el-select-->
<!-- ref="headerSearchSelect"-->
<!-- v-model="form2.phonenumber"-->
<!-- :remote-method="queryPhonenumber"-->
<!-- filterable-->
<!-- default-first-option-->
<!-- remote-->
<!-- :loading="loading2"-->
<!-- placeholder="输入手机号搜索"-->
<!-- class="header-search-select" >-->
<!-- <el-option-->
<!-- v-for="item in options"-->
<!-- :key="item.value"-->
<!-- :label="item.label+'-&#45;&#45;'+item.appName"-->
<!-- :value="item.value">-->
<!-- </el-option>-->
<!-- </el-select>-->
<!-- </el-form-item>-->
<!-- </el-form>-->
<!-- <div slot="footer" class="dialog-footer">-->
<!-- <el-button type="primary" @click="submitForm2"> </el-button>-->
<!-- <el-button @click="cancel"> </el-button>-->
<!-- </div>-->
<!-- </el-dialog>-->
<el-dialog title="提现详细" :visible.sync="open3" width="700px" append-to-body>
<el-form ref="form3" :model="form3" label-width="100px" size="mini">
<el-row>
<el-col :span="24">
<el-form-item label="代理商:">{{ form3.deptName }}</el-form-item>
<el-form-item label="提现单号:">{{ form3.withdrawNo }}</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="提现金额:"><span style="color: red;font-weight: 700">{{ form3.amount }}</span> </el-form-item>
<el-form-item label="申请人:">{{ form3.applicant }}</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="申请时间:">{{ form3.createTime }}</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="状态:">
<dict-tag :options="dict.type.et_withdraw_status" :value="form3.status"/>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="驳回原因" prop="rejectReason">
<el-input v-model="form3.rejectReason" type="textarea" placeholder="请输入驳回原因"
:autosize="{minRows: 4, maxRows: 4}" :style="{width: '100%'}"></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button v-show="view == true" @click="open3 = false"> </el-button>
<el-button v-show="view == false" type="success" @click="pass"> </el-button>
<el-button v-show="view == false" type="danger" @click="reject"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { listWithdraw, getWithdraw, delWithdraw, addWithdraw, updateWithdraw } from "@/api/system/withdraw";
// import { getDeptByToken, listDept } from '@/api/system/dept'
import { fastSearch } from '@/api/user/user'
import { getUser } from '@/api/system/user'
export default {
name: "Withdraw",
dicts: ['rl_withdraw_status'],
dicts: ['et_call_status', 'et_withdraw_status'],
computed: {
formattedFee() {
console.log("handlingCharge===========",this.handlingCharge)
// handlingCharge
let handlingCharge = parseFloat(this.handlingCharge)/1000;
console.log("handlingCharge1===========", handlingCharge);
console.log("this.form.amount===========", this.form.amount);
//
let fee = this.form.amount * handlingCharge;
//
fee = fee.toFixed(2);
// 0
if (fee === 0) {
return '0.00 (免手续费)';
} else {
return `${fee} `;
}
},
actualAmount() {
let amount = this.form.amount;
let handlingCharge = parseFloat(this.handlingCharge)/1000;
let fee = this.form.amount * handlingCharge;
//
fee = Math.round(fee * 100) / 100;
//
let actual = amount - fee;
actual = actual.toFixed(2);
return `${actual} `;
}
},
data() {
return {
//
loading: true,
//
ids: [],
deptOptions: [],
search: '',
options: [],
fuse: undefined,
//
single: true,
loading2: false,
//
multiple: true,
//
@ -264,37 +262,143 @@ export default {
total: 0,
//
withdrawList: [],
balance: null,
userName:null,
user: null,
view: false,
//
title: "",
//
open: false,
title2: "",
//
open2: false,
//
open3: false,
//
queryParams: {
pageNum: 1,
pageSize: 10,
pageSize: 20,
withdrawNo: null,
amount: null,
deptId: null,
status: null,
rejectReason: null,
ownerName: null,
ownerId: null,
ownerPhone: null,
serviceCharge: null,
cost: null,
paymentMethod: null
applicant: null,
phonenumber: null
},
//
form: {},
//
form2: {},
form3: {},
//
rules: {
amount: [
{ required: true, message: "提现金额不能为空", trigger: "blur" },
{ pattern: /^\d+$/, message: '提现金额必须为正整数', trigger: 'blur' },
// 1
{
validator: (rule, value, callback) => {
if (value < 1) {
callback(new Error('提现金额不能小于1'));
} else {
callback();
}
},
trigger: 'blur',
},
// balance
{
validator: (rule, value, callback) => {
if (value > this.balance) {
callback(new Error('提现金额不能超过可用余额'));
} else {
callback();
}
},
trigger: 'blur',
},
]
},
rules2: {
phonenumber: [
{ required: true, message: "手机号码不能为空", trigger: "blur" },
// { pattern: /^1[3-9]\d{9}$/, message: '', trigger: 'blur' },
]
}
};
},
created() {
console.log("当前用户信息:",this.$store.state.user.id)
this.userName = this.$store.state.user.name;
let userId = this.$store.state.user.id;
getUser(userId).then(response => {
this.user = response.data;
});
this.getList();
if(this.userName === 'admin'){
listDept({status: '0',pageNum:1,pageSize:999 }).then(response => {
this.deptOptions = response.data;
});
}
},
methods: {
/** 审核 */
handleEdit(row) {
this.open3 = true;
this.form3 = row;
this.view = false;
},
/** 通过 */
pass(){
this.$refs["form3"].validate(valid => {
if (valid) {
if (this.form3.id != null) {
this.form3.status = "1";
console.log("---------"+JSON.stringify(this.form3))
updateWithdraw(this.form3).then(response => {
this.$modal.msgSuccess("操作成功");
this.open3 = false;
this.getList();
});
}
}
});
},
/** 拒绝 */
reject(){
// console.log("-===========",this.form3.rejectReason)
if(this.form3.rejectReason == undefined || this.form3.rejectReason == ''){
this.$modal.msgError("驳回原因不能为空");
return
}
this.$refs["form3"].validate(valid => {
if (valid) {
if (this.form3.id != null) {
this.form3.status = "2";
updateWithdraw(this.form3).then(response => {
this.$modal.msgSuccess("操作成功");
this.open3 = false;
this.getList();
});
}
}
});
},
queryPhonenumber(query) {
console.log("query:",query)
if (query !== '') {
this.loading2 = true;
setTimeout(() => {
this.loading2 = false;
fastSearch({"phonenumber":query}).then(response => {
this.options = response.data;
}
);
}, 200);
} else {
this.options = []
}
},
/** 查询提现记录列表 */
getList() {
this.loading = true;
@ -307,6 +411,7 @@ export default {
//
cancel() {
this.open = false;
this.open2 = false;
this.reset();
},
//
@ -317,16 +422,16 @@ export default {
amount: null,
deptId: null,
status: null,
applicant: null,
wxopenid: null,
createTime: null,
rejectReason: null,
ownerName: null,
ownerId: null,
ownerPhone: null,
serviceCharge: null,
cost: null,
paymentMethod: null
callStatus: null
};
this.form2 = {
appUserId: null,
};
this.resetForm("form");
this.resetForm("form2");
},
/** 搜索按钮操作 */
handleQuery() {
@ -346,9 +451,19 @@ export default {
},
/** 新增按钮操作 */
handleAdd() {
// //
// getDeptByToken().then(response => {
// this.balance = response.data.balance;
// this.handlingCharge = response.data.handlingCharge;
// });
this.reset();
this.open = true;
this.title = "添加提现记录";
this.title = "申请提现";
},
bandWxUser(){
this.reset();
this.open2 = true;
this.title2 = "绑定微信用户";
},
/** 修改按钮操作 */
handleUpdate(row) {
@ -380,6 +495,21 @@ export default {
}
});
},
// submitForm2: function() {
// let form2 = this.form2
// this.$refs['form2'].validate(valid => {
// if (valid) {
// this.$modal.confirm('').then(function() {
// return bandAppUser({appUserId:form2.phonenumber})
// }).then(() => {
// //
// location.reload()
// this.$modal.msgSuccess('')
// }).catch(() => {
// })
// }
// })
// },
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
@ -399,3 +529,22 @@ export default {
}
};
</script>
<style lang="scss">
.el-select {
.el-input__inner{
color: red;
}
}
.el-input{
.el-input__inner{
color: red;
}
}
.amoun-tips{
color: red;
font-size: 12px;
font-weight: 700;
}
</style>