Compare commits
11 Commits
3a9d6c9e30
...
ea19bd16ed
Author | SHA1 | Date |
---|---|---|
校文 | ea19bd16ed | 3 years ago |
张雄 | e9ff6ada55 | 3 years ago |
张雄 | 677a667ad1 | 3 years ago |
张雄 | de7485fc87 | 3 years ago |
张雄 | 5b377ac1ae | 3 years ago |
张雄 | 53a846697b | 3 years ago |
张雄 | b7c5e4e85e | 3 years ago |
张雄 | f9f4b65675 | 3 years ago |
张雄 | 7f97fffcc3 | 3 years ago |
张雄 | 737c19a9bf | 3 years ago |
张雄 | 670dccc462 | 3 years ago |
@ -0,0 +1,19 @@
|
|||||||
|
import httpService from "@/request"
|
||||||
|
|
||||||
|
// 城市-查询所有城市信息
|
||||||
|
export function getAllCity(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/city/allCity`,
|
||||||
|
method: 'get',
|
||||||
|
params: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 城市-根据父类ID查询城市信息
|
||||||
|
export function getCityByParent(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/city/findByParentId`,
|
||||||
|
method: 'get',
|
||||||
|
params: params,
|
||||||
|
})
|
||||||
|
}
|
@ -0,0 +1,298 @@
|
|||||||
|
import httpService from "@/request"
|
||||||
|
|
||||||
|
// 入住申请-查询所有的入驻申请记录
|
||||||
|
export function getAllRequest(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/settledApplication/list`,
|
||||||
|
method: 'get',
|
||||||
|
params: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 入住申请-根据入驻申请主键id查询详情
|
||||||
|
export function getRequestDetail(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/settledApplication/findDetailsById`,
|
||||||
|
method: 'get',
|
||||||
|
params: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 入住申请-通过/驳回入驻申请
|
||||||
|
export function isPass(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/settledApplication/isPass`,
|
||||||
|
method: 'post',
|
||||||
|
params: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 客户列表-查询所有客户信息
|
||||||
|
export function getCustomerList(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/customerList/list`,
|
||||||
|
method: 'get',
|
||||||
|
params: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 客户列表-根据客户主键id查询详情
|
||||||
|
export function getCustomerDetail(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/customerList/findDetailsById`,
|
||||||
|
method: 'get',
|
||||||
|
params: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 小区管理-查询所有的小区信息
|
||||||
|
export function getCommunityList(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/community/list`,
|
||||||
|
method: 'get',
|
||||||
|
params: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 小区管理-获取对应公司下的所有小区信息
|
||||||
|
export function getComById(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/community/getCommunityInfoByCompanyId`,
|
||||||
|
method: 'get',
|
||||||
|
params: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 小区管理-添加小区信息
|
||||||
|
export function getAddCommunity(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/community/insertAdmin`,
|
||||||
|
method: 'post',
|
||||||
|
data: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 小区管理-根据小区主键id查询小区信息
|
||||||
|
export function findByIdAdmin(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/community/findByIdAdmin`,
|
||||||
|
method: 'get',
|
||||||
|
params: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 小区管理-修改小区信息
|
||||||
|
export function updateCommunity(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/community/updateAdmin`,
|
||||||
|
method: 'post',
|
||||||
|
data: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 订单管理-查询所有订单
|
||||||
|
export function getAllOrder(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/order/list`,
|
||||||
|
method: 'get',
|
||||||
|
params: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 订单管理-后台创建订单
|
||||||
|
export function createOrder(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/order/adminCreateOrder`,
|
||||||
|
method: 'post',
|
||||||
|
data: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 订单管理-计算金额
|
||||||
|
export function calcAmount(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/order/calculateAmount`,
|
||||||
|
method: 'post',
|
||||||
|
data: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 订单管理-订单解绑小区
|
||||||
|
export function orderUnbound(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/order/unbindingCommunity`,
|
||||||
|
method: 'get',
|
||||||
|
params: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 收费管理-收费标准-查询收费模版信息
|
||||||
|
export function getChargingList(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/charging/list`,
|
||||||
|
method: 'get',
|
||||||
|
params: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 收费管理-收费标准-查询收费标准时间类型
|
||||||
|
export function findTimeType(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/charging/findTimeType`,
|
||||||
|
method: 'get',
|
||||||
|
params: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 收费管理-收费标准-查询收费标准功能模块大类信息
|
||||||
|
export function findSuperNavigation(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/charging/findSuperNavigation`,
|
||||||
|
method: 'get',
|
||||||
|
params: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 收费管理-根据收费模版主键Id查询收费模版信息
|
||||||
|
export function getChargeById(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/charging/findById`,
|
||||||
|
method: 'get',
|
||||||
|
params: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 收费管理-收费标准-启用/禁用收费模版
|
||||||
|
export function onoffCharging(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/charging/updateStatus`,
|
||||||
|
method: 'post',
|
||||||
|
data: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 收费管理-收费标准-添加收费模版
|
||||||
|
export function addCharge(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/charging/insert`,
|
||||||
|
method: 'post',
|
||||||
|
data: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 收费管理-收费标准-修改收费模版
|
||||||
|
export function updateCharge(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/charging/update`,
|
||||||
|
method: 'post',
|
||||||
|
data: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 收费管理-财务账单-查询所有财务账单
|
||||||
|
export function getAllList(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/financialStatements/list`,
|
||||||
|
method: 'get',
|
||||||
|
params: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 收费管理-财务账单-财务账单详情
|
||||||
|
export function getOrderDetail(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/financialStatements/findDetails`,
|
||||||
|
method: 'get',
|
||||||
|
params: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 收费管理-财务账单-退款页面回显
|
||||||
|
export function getPayback(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/financialStatements/findById`,
|
||||||
|
method: 'get',
|
||||||
|
params: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 收费管理-财务账单-退款
|
||||||
|
export function postRefund(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/financialStatements/refund`,
|
||||||
|
method: 'post',
|
||||||
|
data: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 支付设置-查询所有的支付宝设置信息
|
||||||
|
export function alipayList(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/alipaySetting/list`,
|
||||||
|
method: 'get',
|
||||||
|
params: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 支付设置-开启/停用支付宝设置信息
|
||||||
|
export function isEnable(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/alipaySetting/isEnable`,
|
||||||
|
method: 'get',
|
||||||
|
params: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 支付设置-删除支付宝设置信息
|
||||||
|
export function alipayDelete(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/alipaySetting/delete`,
|
||||||
|
method: 'post',
|
||||||
|
data: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 支付设置-添加支付宝设置信息
|
||||||
|
export function alipayInsert(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/alipaySetting/insert`,
|
||||||
|
method: 'post',
|
||||||
|
data: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 支付设置-支付宝设置绑定小区
|
||||||
|
export function alipayBound(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/alipaySetting/bind`,
|
||||||
|
method: 'post',
|
||||||
|
data: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 支付设置-根据支付宝设置主键id查询支付宝设置绑定信息
|
||||||
|
export function findBindById(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/alipaySetting/findBindById`,
|
||||||
|
method: 'get',
|
||||||
|
params: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 支付设置-根据支付宝设置主键id查询支付宝设置信息
|
||||||
|
export function findInfoById(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/alipaySetting/findInfoById`,
|
||||||
|
method: 'get',
|
||||||
|
params: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 支付设置-修改支付宝设置信息
|
||||||
|
export function alipayUpdate(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/alipaySetting/update`,
|
||||||
|
method: 'post',
|
||||||
|
data: params,
|
||||||
|
})
|
||||||
|
}
|
@ -0,0 +1,10 @@
|
|||||||
|
import httpService from "@/request"
|
||||||
|
|
||||||
|
// 上传平台照片
|
||||||
|
export function picUpload(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/upload/uploadImg`,
|
||||||
|
method: 'post',
|
||||||
|
params: params,
|
||||||
|
})
|
||||||
|
}
|
@ -0,0 +1,19 @@
|
|||||||
|
import httpService from "@/request"
|
||||||
|
|
||||||
|
// 查询平台余额账单记录
|
||||||
|
export function getBalanceList(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/balanceRecord/list`,
|
||||||
|
method: 'get',
|
||||||
|
params: params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 平台账户余额充值 创建订单
|
||||||
|
export function createBalanceRechargeOrder(params) {
|
||||||
|
return httpService({
|
||||||
|
url: `/user/alipay/createBalanceRechargeOrder`,
|
||||||
|
method: 'post',
|
||||||
|
data: params,
|
||||||
|
})
|
||||||
|
}
|
@ -0,0 +1,319 @@
|
|||||||
|
<template>
|
||||||
|
<div class="main">
|
||||||
|
<div class="cardTitle">支付设置</div>
|
||||||
|
<div class="search-box">
|
||||||
|
<a-space size="large">
|
||||||
|
<a-form-model layout="inline">
|
||||||
|
<a-form-model-item label="商户名称">
|
||||||
|
<a-input placeholder="请输入商户名称"></a-input>
|
||||||
|
</a-form-model-item>
|
||||||
|
</a-form-model>
|
||||||
|
<a-button type="primary" @click="handlerSearch">查 询</a-button>
|
||||||
|
<a-button @click="handlerReset">重 置</a-button>
|
||||||
|
</a-space>
|
||||||
|
</div>
|
||||||
|
<div id="commonTable">
|
||||||
|
<div style="margin-bottom: 16px">
|
||||||
|
<a-button icon="plus" @click="hanlderAdd" type="primary" ghost>
|
||||||
|
添加设置信息
|
||||||
|
</a-button>
|
||||||
|
</div>
|
||||||
|
<a-table :columns="columns" :data-source="tableData" :pagination="pagination" @change="pageChange" :row-key="(record) => {return record.id}">
|
||||||
|
<template slot="communityList" slot-scope="text,record">
|
||||||
|
<span v-for="(item) in record.communityList" :key="item.id">
|
||||||
|
{{item.name}}
|
||||||
|
</span>
|
||||||
|
</template>
|
||||||
|
<template slot="status" slot-scope="text,record">
|
||||||
|
<a-switch :checked="record.status==2 ? false : true" checked-children="启用" un-checked-children="停用" @change="onChange(record)" />
|
||||||
|
</template>
|
||||||
|
<template slot="action" slot-scope="text,record">
|
||||||
|
<a @click="alipayEdit(record)">编辑</a>
|
||||||
|
<a @click="boundEdit(record)" style="margin-left: 8px">绑定小区</a>
|
||||||
|
<a style="margin-left: 8px;color: red" @click="alipaySetDel(record)">删除</a>
|
||||||
|
</template>
|
||||||
|
</a-table>
|
||||||
|
</div>
|
||||||
|
<a-drawer :title="activeMode == 1 ? '新建支付':'编辑支付'" :visible="drawerVisible" @close="drawerClose" width="512">
|
||||||
|
<div class="drawer-content">
|
||||||
|
<a-form-model>
|
||||||
|
<a-row>
|
||||||
|
<a-col :span="24">
|
||||||
|
<a-form-model-item label="商户名称">
|
||||||
|
<a-input v-model="alipayForm.name" placeholder="请输入"></a-input>
|
||||||
|
</a-form-model-item>
|
||||||
|
<a-form-model-item label="支付宝APPID">
|
||||||
|
<a-input v-model="alipayForm.alipayAppId" placeholder="请输入"></a-input>
|
||||||
|
</a-form-model-item>
|
||||||
|
<a-form-model-item label="支付宝公钥">
|
||||||
|
<a-textarea v-model="alipayForm.alipayPublicKey" placeholder="请输入公钥"></a-textarea>
|
||||||
|
</a-form-model-item>
|
||||||
|
<a-form-model-item label="支付宝商户公钥">
|
||||||
|
<a-textarea v-model="alipayForm.rsaPublicKey" placeholder="请输入公钥"></a-textarea>
|
||||||
|
</a-form-model-item>
|
||||||
|
<a-form-model-item label="支付宝商户私钥">
|
||||||
|
<a-textarea v-model="alipayForm.rsaPrivatKey" placeholder="请输入私钥"></a-textarea>
|
||||||
|
</a-form-model-item>
|
||||||
|
<a-form-model-item label="支付宝授权TOKEN">
|
||||||
|
<a-textarea v-model="alipayForm.appAuthToken" placeholder="请输入"></a-textarea>
|
||||||
|
</a-form-model-item>
|
||||||
|
</a-col>
|
||||||
|
</a-row>
|
||||||
|
</a-form-model>
|
||||||
|
</div>
|
||||||
|
<div class="drawer-footer">
|
||||||
|
<a-button @click="drawerClose">关闭</a-button>
|
||||||
|
<a-button style="margin-left: 8px" v-if="activeMode == 1" @click="alipayNext" type="primary">下一步</a-button>
|
||||||
|
<a-button style="margin-left: 8px" v-else-if="activeMode == 2" @click="editConfirm" type="primary">确定</a-button>
|
||||||
|
</div>
|
||||||
|
</a-drawer>
|
||||||
|
<a-drawer title="绑定小区" :visible="boundVisible" @close="boundClose" width="512">
|
||||||
|
<div>全部小区</div>
|
||||||
|
<a-switch checked-children="开" un-checked-children="关" @change="selectAll"></a-switch>
|
||||||
|
<a-divider></a-divider>
|
||||||
|
<a-checkbox-group v-model="boundForm.communityIds" @change="cgChange">
|
||||||
|
<a-row>
|
||||||
|
<a-col style="padding: 6px" :span="24" v-for="(item, index) in comList" :key="index">
|
||||||
|
<a-checkbox :value="item.id">
|
||||||
|
{{item.name}}
|
||||||
|
</a-checkbox>
|
||||||
|
</a-col>
|
||||||
|
</a-row>
|
||||||
|
</a-checkbox-group>
|
||||||
|
<div class="drawer-footer">
|
||||||
|
<a-button @click="boundClose">取消</a-button>
|
||||||
|
<a-button @click="boundConfirm" type="primary">保存</a-button>
|
||||||
|
</div>
|
||||||
|
</a-drawer>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import {alipayList, isEnable, alipayDelete, alipayUpdate} from "@/api/manage"
|
||||||
|
import {alipayInsert, alipayBound, findBindById, findInfoById} from "@/api/manage"
|
||||||
|
import {getAllCommunityInfo} from "@/api/basic/console"
|
||||||
|
export default {
|
||||||
|
name: 'PaymentSet',
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
form: {
|
||||||
|
name: ''
|
||||||
|
},
|
||||||
|
alipayForm: {
|
||||||
|
name: '',
|
||||||
|
alipayAppId: '',
|
||||||
|
alipayPublicKey: '',
|
||||||
|
rsaPublicKey: '',
|
||||||
|
rsaPrivatKey: '',
|
||||||
|
appAuthToken: ''
|
||||||
|
},
|
||||||
|
boundForm: {
|
||||||
|
alipaySettingId: undefined,
|
||||||
|
communityIds: []
|
||||||
|
},
|
||||||
|
tableData: [],
|
||||||
|
columns: [
|
||||||
|
{
|
||||||
|
title: "商户名称",
|
||||||
|
dataIndex: "name",
|
||||||
|
width: "200",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "绑定小区",
|
||||||
|
dataIndex: "communityList",
|
||||||
|
width: "200",
|
||||||
|
scopedSlots: { customRender: "communityList" },
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "状态",
|
||||||
|
dataIndex: "status",
|
||||||
|
width: "200",
|
||||||
|
scopedSlots: { customRender: "status" },
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "操作",
|
||||||
|
dataIndex: "action",
|
||||||
|
key: "action",
|
||||||
|
width: "180",
|
||||||
|
fixed: "right",
|
||||||
|
scopedSlots: { customRender: "action" },
|
||||||
|
},
|
||||||
|
],
|
||||||
|
pagination: {
|
||||||
|
current: 1,
|
||||||
|
total: 0,
|
||||||
|
pageSize: 10,
|
||||||
|
showTotal: (total) => `共 ${total} 条`,
|
||||||
|
showSizeChanger: true,
|
||||||
|
showQuickJumper: true,
|
||||||
|
},
|
||||||
|
//新建 编辑抽屉
|
||||||
|
activeMode: 1, //1新增 2编辑
|
||||||
|
activeId: undefined,
|
||||||
|
drawerVisible: false,
|
||||||
|
//绑定小区抽屉
|
||||||
|
comList: [],
|
||||||
|
boundVisible: false,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
this.getApi();
|
||||||
|
this.getData()
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
getApi() {
|
||||||
|
getAllCommunityInfo().then(res => {
|
||||||
|
let data = res.data;
|
||||||
|
this.comList = data;
|
||||||
|
})
|
||||||
|
},
|
||||||
|
getData() {
|
||||||
|
let obj = {pageNum: this.pagination.current, size: this.pagination.pageSize, name: this.form.name};
|
||||||
|
alipayList(obj).then(res => {
|
||||||
|
let data = res.data.rows;
|
||||||
|
this.pagination.total = res.data.total;
|
||||||
|
this.tableData = data;
|
||||||
|
})
|
||||||
|
},
|
||||||
|
handlerSearch() {
|
||||||
|
|
||||||
|
},
|
||||||
|
handlerReset() {
|
||||||
|
|
||||||
|
},
|
||||||
|
hanlderAdd() {
|
||||||
|
this.activeMode = 1;
|
||||||
|
this.alipayForm = {
|
||||||
|
name: '',
|
||||||
|
alipayAppId: '',
|
||||||
|
alipayPublicKey: '',
|
||||||
|
rsaPublicKey: '',
|
||||||
|
rsaPrivatKey: '',
|
||||||
|
appAuthToken: ''
|
||||||
|
},
|
||||||
|
this.drawerVisible = true;
|
||||||
|
},
|
||||||
|
//点击编辑的回调
|
||||||
|
alipayEdit(record) {
|
||||||
|
this.activeMode = 2;
|
||||||
|
findInfoById({alipaySettingId: record.id}).then(res => {
|
||||||
|
let data = res.data;
|
||||||
|
this.activeId = data.id;
|
||||||
|
this.alipayForm.name = data.name;
|
||||||
|
this.alipayForm.alipayAppId = data.alipayAppId;
|
||||||
|
this.alipayForm.alipayPublicKey = data.alipayPublicKey;
|
||||||
|
this.alipayForm.appAuthToken = data.appAuthToken;
|
||||||
|
this.alipayForm.rsaPrivatKey = data.rsaPrivatKey;
|
||||||
|
this.alipayForm.rsaPublicKey = data.rsaPublicKey;
|
||||||
|
})
|
||||||
|
this.drawerVisible = true;
|
||||||
|
},
|
||||||
|
//点击绑定小区的回调
|
||||||
|
boundEdit(record) {
|
||||||
|
this.boundForm.alipaySettingId = record.id;
|
||||||
|
findBindById({alipaySettingId: record.id}).then(res => {
|
||||||
|
let data = res.data;
|
||||||
|
this.boundForm.communityIds = data.communityIds
|
||||||
|
})
|
||||||
|
this.boundVisible = true;
|
||||||
|
},
|
||||||
|
//分页
|
||||||
|
pageChange(val) {
|
||||||
|
this.pagination.pageSize = val.pageSize;
|
||||||
|
this.pagination.current = val.current;
|
||||||
|
this.getData()
|
||||||
|
},
|
||||||
|
//改变状态
|
||||||
|
onChange(record) {
|
||||||
|
let obj = {alipaySettingId: record.id}
|
||||||
|
isEnable(obj).then(res => {
|
||||||
|
if (res.code === 200) {
|
||||||
|
this.$message.success(res.msg);
|
||||||
|
this.getData();
|
||||||
|
} else {
|
||||||
|
this.$message.error(res.msg);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
//删除
|
||||||
|
alipaySetDel(record) {
|
||||||
|
let obj = {alipaySettingIds : [record.id]};
|
||||||
|
this.$confirm({
|
||||||
|
title: "是否删除?",
|
||||||
|
icon:'close',
|
||||||
|
onOk:async()=>{
|
||||||
|
let res = await alipayDelete(obj);
|
||||||
|
if (res.code === 200) {
|
||||||
|
this.$message.success(res.msg);
|
||||||
|
this.getData();
|
||||||
|
} else {
|
||||||
|
this.$message.error(res.msg);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
})
|
||||||
|
},
|
||||||
|
//抽屉
|
||||||
|
drawerClose() {this.drawerVisible = false},
|
||||||
|
boundClose() {this.boundVisible = false},
|
||||||
|
alipayNext() {
|
||||||
|
alipayInsert(this.alipayForm).then(res => {
|
||||||
|
if (res.code === 200) {
|
||||||
|
this.$message.success(res.msg);
|
||||||
|
this.getData();
|
||||||
|
this.drawerVisible = false;
|
||||||
|
// this.boundVisible = true;
|
||||||
|
} else {
|
||||||
|
this.$message.error(res.msg);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
//编辑确认
|
||||||
|
editConfirm() {
|
||||||
|
let obj = Object.assign({}, this.alipayForm, {id: this.activeId})
|
||||||
|
alipayUpdate(obj).then(res => {
|
||||||
|
if (res.code === 200) {
|
||||||
|
this.$message.success(res.msg);
|
||||||
|
this.getData();
|
||||||
|
this.drawerVisible = false;
|
||||||
|
} else {
|
||||||
|
this.$message.error(res.msg);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
//绑定页面
|
||||||
|
cgChange(val) {
|
||||||
|
this.boundForm.communityIds = val
|
||||||
|
}, //小区全选
|
||||||
|
selectAll(val) {
|
||||||
|
if(val == true) {
|
||||||
|
let arr = []
|
||||||
|
getAllCommunityInfo().then(res => {
|
||||||
|
let data = res.data;
|
||||||
|
data.forEach(ele => {
|
||||||
|
arr.push(ele.id)
|
||||||
|
})
|
||||||
|
});
|
||||||
|
this.boundForm.communityIds = arr
|
||||||
|
} else {
|
||||||
|
this.boundForm.communityIds = []
|
||||||
|
}
|
||||||
|
},
|
||||||
|
boundConfirm() {
|
||||||
|
alipayBound(this.boundForm).then(res => {
|
||||||
|
if (res.code === 200) {
|
||||||
|
this.$message.success(res.msg);
|
||||||
|
this.getData();
|
||||||
|
this.boundForm = {alipaySettingId: undefined, communityIds: []}
|
||||||
|
this.boundVisible = false;
|
||||||
|
} else {
|
||||||
|
this.$message.error(res.msg);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
|
||||||
|
</style>
|
@ -0,0 +1,13 @@
|
|||||||
|
<template>
|
||||||
|
<router-view></router-view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
name: 'AdminSet'
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
|
||||||
|
</style>
|
@ -0,0 +1,372 @@
|
|||||||
|
<template>
|
||||||
|
<div class="main">
|
||||||
|
<div class="cardTitle">收费标准</div>
|
||||||
|
<div class="search-box">
|
||||||
|
<a-space size="large">
|
||||||
|
<a-form-model layout="inline">
|
||||||
|
<a-form-model-item label="模版名称">
|
||||||
|
<a-input v-model="form.name" placeholder="请输入模版名称" />
|
||||||
|
</a-form-model-item>
|
||||||
|
<a-form-model-item label="状态">
|
||||||
|
<a-select placeholder="请选择状态" style="width: 180px" allowClear v-model="form.status">
|
||||||
|
<a-select-option :value="1">
|
||||||
|
启用
|
||||||
|
</a-select-option>
|
||||||
|
<a-select-option :value="2">
|
||||||
|
禁用
|
||||||
|
</a-select-option>
|
||||||
|
</a-select>
|
||||||
|
</a-form-model-item>
|
||||||
|
</a-form-model>
|
||||||
|
<a-button @click="onSearch" type="primary">查 询</a-button>
|
||||||
|
<a-button @click="onReset">重 置</a-button>
|
||||||
|
</a-space>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="commonTable">
|
||||||
|
<div style="margin-bottom: 16px">
|
||||||
|
<a-button icon="plus" @click="handlerAdd" type="primary" ghost>
|
||||||
|
新建收费模版
|
||||||
|
</a-button>
|
||||||
|
</div>
|
||||||
|
<a-table
|
||||||
|
:scroll="{ x: 1300 }"
|
||||||
|
:columns="columns"
|
||||||
|
:data-source="tableData"
|
||||||
|
:pagination="pagination"
|
||||||
|
@change="handleTableChange"
|
||||||
|
:row-key="
|
||||||
|
(record, index) => {
|
||||||
|
return index;
|
||||||
|
}
|
||||||
|
"
|
||||||
|
>
|
||||||
|
<span slot="tags" slot-scope="text, record">
|
||||||
|
<a-tag v-for="(item, index) in record.includeFunctionModelList" :key="index" :color="colors[index] ? colors[index] : 'black'">
|
||||||
|
{{item}}
|
||||||
|
</a-tag>
|
||||||
|
</span>
|
||||||
|
<span slot="formatter" slot-scope="text, record">
|
||||||
|
<a-switch :checked="record.status==2 ? false : true" checked-children="启用" un-checked-children="禁用" @change="onChange(record)" />
|
||||||
|
</span>
|
||||||
|
<span slot="action" slot-scope="text,record">
|
||||||
|
<a @click="detail(record)">修改设置</a>
|
||||||
|
</span>
|
||||||
|
</a-table>
|
||||||
|
<!-- 新建/修改框 -->
|
||||||
|
<a-drawer :title="drawerModel == 1 ? '新建收费模版':'修改收费模版'" :visible="visible" @close="hanlderClose" width="512">
|
||||||
|
<a-form-model>
|
||||||
|
<a-form-model-item label="模版名称">
|
||||||
|
<a-input v-model="addForm.name" style="width: 240px" placeholder="请输入模版名称" />
|
||||||
|
</a-form-model-item>
|
||||||
|
<a-form-model-item label="功能模块大类">
|
||||||
|
<!-- <a-checkbox-group :options="modalType" @change="modelChange" /> -->
|
||||||
|
<a-checkbox-group v-model="chargingFunctionIds">
|
||||||
|
<a-checkbox v-for="(item) in modelInput" :value="item.id" :key="item.id">
|
||||||
|
{{item.name}}
|
||||||
|
</a-checkbox>
|
||||||
|
</a-checkbox-group>
|
||||||
|
</a-form-model-item>
|
||||||
|
<a-form-model-item label="时间类型">
|
||||||
|
<!-- <a-checkbox-group :options="timeType" @change="timeChange" /> -->
|
||||||
|
<a-checkbox-group v-model="chargingTimeTypeIds">
|
||||||
|
<a-checkbox v-for="(item) in timeInput" :value="item.id" :key="item.id">
|
||||||
|
{{item.years}}年{{item.months}}个月{{item.days}}天
|
||||||
|
</a-checkbox>
|
||||||
|
</a-checkbox-group>
|
||||||
|
</a-form-model-item>
|
||||||
|
<a-form-model-item label="价格参数">
|
||||||
|
<div class="columns">
|
||||||
|
<span class="columns-item">功能模块</span>
|
||||||
|
<span class="columns-item">时间</span>
|
||||||
|
<span class="columns-item">价格</span>
|
||||||
|
</div>
|
||||||
|
<div class="model-item" v-for="(item, index) in modelInput" :key="index">
|
||||||
|
<template v-if="chargingFunctionIds.indexOf(item.id)!=-1">
|
||||||
|
<span class="models">{{item.name}}</span>
|
||||||
|
<span class="models2">
|
||||||
|
<div v-for="(it , id) in timeInput" :key="id">
|
||||||
|
<span v-if="chargingTimeTypeIds.indexOf(it.id)!=-1">
|
||||||
|
{{it.years}}年{{it.months}}个月{{it.days}}天
|
||||||
|
<a-input-number step="0.01" v-model="addForm.chargingTemplateFunctionTimeTypeDTO[id + index * timeInput.length].unitPrice" style="width:120px;margin-left: 65px"></a-input-number>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</span>
|
||||||
|
</template>
|
||||||
|
</div>
|
||||||
|
</a-form-model-item>
|
||||||
|
</a-form-model>
|
||||||
|
<a-button v-if="drawerModel==1" @click="addConfirm" type="primary">确认新增</a-button>
|
||||||
|
<a-button v-else type="primary" @click="addConfirm">确认修改</a-button>
|
||||||
|
</a-drawer>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import {getChargingList, getChargeById} from "@/api/manage"
|
||||||
|
import {onoffCharging} from "@/api/manage"
|
||||||
|
import {findTimeType, findSuperNavigation, addCharge, updateCharge } from "@/api/manage";
|
||||||
|
export default {
|
||||||
|
name: "chagingStandard",
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
drawerModel: 1,
|
||||||
|
form: {
|
||||||
|
pageNum: 1,
|
||||||
|
size: 10,
|
||||||
|
name: '',
|
||||||
|
status: undefined
|
||||||
|
},
|
||||||
|
chargingFunctionIds: [],
|
||||||
|
chargingTimeTypeIds: [],
|
||||||
|
// colors: ['volcano','orange','yellow','green','blue','purple','grey'],
|
||||||
|
colors: ['#1F519B','#1F519B','#1F519B','#1F519B','#1F519B','#1F519B','#1F519B','#1F519B','#1F519B',],
|
||||||
|
tableData: [],
|
||||||
|
columns: [
|
||||||
|
{
|
||||||
|
title: "模版名称",
|
||||||
|
dataIndex: "name",
|
||||||
|
width: 120,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "包含功能模块",
|
||||||
|
dataIndex: "includeFunctionModelList",
|
||||||
|
scopedSlots: { customRender: "tags" },
|
||||||
|
width: 360,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "已购买次数",
|
||||||
|
dataIndex: "payNum",
|
||||||
|
width: 120,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "状态",
|
||||||
|
dataIndex: "status",
|
||||||
|
scopedSlots: { customRender: "formatter" },
|
||||||
|
width: 120,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "操作",
|
||||||
|
dataIndex: "action",
|
||||||
|
key: "action",
|
||||||
|
width: 180,
|
||||||
|
fixed: "right",
|
||||||
|
scopedSlots: { customRender: "action" },
|
||||||
|
},
|
||||||
|
],
|
||||||
|
pagination: {
|
||||||
|
current: 1,
|
||||||
|
total: 0,
|
||||||
|
pageSize: 10,
|
||||||
|
showTotal: (total) => `共 ${total} 条`,
|
||||||
|
showSizeChanger: true,
|
||||||
|
showQuickJumper: true,
|
||||||
|
},
|
||||||
|
//新建
|
||||||
|
addForm: {
|
||||||
|
name: '',
|
||||||
|
chargingTemplateFunctionTimeTypeDTO: [
|
||||||
|
{
|
||||||
|
chargingFunctionId: 0,
|
||||||
|
chargingTimeTypeId: 0,
|
||||||
|
unitPrice: 0,
|
||||||
|
}
|
||||||
|
],
|
||||||
|
},
|
||||||
|
visible: false,
|
||||||
|
//收费标准时间类型
|
||||||
|
// timeType: [],
|
||||||
|
activeTime: [],
|
||||||
|
timeInput: [],
|
||||||
|
//收费标准模块信息
|
||||||
|
// modalType: [],
|
||||||
|
activeModel: [],
|
||||||
|
modelInput: [],
|
||||||
|
}
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
this.getType();
|
||||||
|
this.getData();
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
getData() {
|
||||||
|
getChargingList(this.form).then(res => {
|
||||||
|
this.pagination.total = res.data.total;
|
||||||
|
let data = res.data.rows;
|
||||||
|
this.tableData = data;
|
||||||
|
this.doPrice();
|
||||||
|
})
|
||||||
|
},
|
||||||
|
//获取后台数据
|
||||||
|
getType() {
|
||||||
|
findTimeType().then(res => {
|
||||||
|
let data = res.data;
|
||||||
|
this.timeInput = data; //输入框
|
||||||
|
// let opts = [];
|
||||||
|
// data.forEach(ele => {
|
||||||
|
// let obj = {
|
||||||
|
// label: ele.years+'年' + ele.months+'个月' + ele.days+'天',
|
||||||
|
// value: ele.id
|
||||||
|
// };
|
||||||
|
// opts.push(obj)
|
||||||
|
// })
|
||||||
|
// this.timeType = opts //多选框
|
||||||
|
});
|
||||||
|
findSuperNavigation().then(res => {
|
||||||
|
let data = res.data;
|
||||||
|
this.modelInput = data; //输入框
|
||||||
|
// let opts = [];
|
||||||
|
// data.forEach(ele => {
|
||||||
|
// let obj = {
|
||||||
|
// label: ele.name, value: ele.id
|
||||||
|
// };
|
||||||
|
// opts.push(obj)
|
||||||
|
// })
|
||||||
|
// this.modalType = opts //多选框
|
||||||
|
})
|
||||||
|
},
|
||||||
|
//填充价格
|
||||||
|
doPrice() {
|
||||||
|
let addForm = [];
|
||||||
|
for(let i = 0;i < this.modelInput.length;i++){
|
||||||
|
for(let j = 0; j < this.timeInput.length;j++) {
|
||||||
|
let obj = {
|
||||||
|
chargingFunctionId: this.modelInput[i].id,
|
||||||
|
chargingTimeTypeId: this.timeInput[j].id,
|
||||||
|
unitPrice: 0,
|
||||||
|
};
|
||||||
|
addForm.push(obj)
|
||||||
|
}
|
||||||
|
};
|
||||||
|
this.addForm.chargingTemplateFunctionTimeTypeDTO = addForm;
|
||||||
|
},
|
||||||
|
//分页
|
||||||
|
handleTableChange(pagination) {
|
||||||
|
this.pagination.current = pagination.current
|
||||||
|
this.pagination.pageSize = pagination.pageSize
|
||||||
|
this.form.size = pagination.pageSize;
|
||||||
|
this.form.pageNum = pagination.current;
|
||||||
|
this.getData();
|
||||||
|
},
|
||||||
|
//新建收费模版
|
||||||
|
handlerAdd() {
|
||||||
|
this.drawerModel = 1;
|
||||||
|
this.addForm.name = '';
|
||||||
|
this.chargingFunctionIds = [];
|
||||||
|
this.chargingTimeTypeIds = [];
|
||||||
|
this.visible = true
|
||||||
|
},
|
||||||
|
//-改变选择的模块
|
||||||
|
// modelChange(val) {
|
||||||
|
// this.activeModel = val;
|
||||||
|
// },
|
||||||
|
// timeChange(val) {
|
||||||
|
// this.activeTime = val
|
||||||
|
// },
|
||||||
|
hanlderClose() {
|
||||||
|
this.visible = false
|
||||||
|
},
|
||||||
|
//确定添加
|
||||||
|
addConfirm() {
|
||||||
|
let adds = this.addForm.chargingTemplateFunctionTimeTypeDTO
|
||||||
|
let chosenAdds = [];
|
||||||
|
adds.forEach(ele => {
|
||||||
|
if(this.chargingFunctionIds.indexOf(ele.chargingFunctionId)!= -1 &&
|
||||||
|
this.chargingTimeTypeIds.indexOf(ele.chargingTimeTypeId)!= -1) {
|
||||||
|
let obj = {
|
||||||
|
chargingFunctionId: ele.chargingFunctionId,
|
||||||
|
chargingTimeTypeId: ele.chargingTimeTypeId,
|
||||||
|
unitPrice: ele.unitPrice
|
||||||
|
};
|
||||||
|
chosenAdds.push(obj)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
let obj = {
|
||||||
|
name: this.addForm.name,
|
||||||
|
chargingTemplateFunctionTimeTypeDTO: chosenAdds
|
||||||
|
}
|
||||||
|
if(this.drawerModel == 1) {
|
||||||
|
addCharge(obj).then((res) => {
|
||||||
|
if (res.code === 200) {
|
||||||
|
this.visible = false
|
||||||
|
this.$message.success(res.msg);
|
||||||
|
this.getData();
|
||||||
|
} else {
|
||||||
|
this.$message.error(res.msg);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
let o = Object.assign(obj, {id: this.chosenModel});
|
||||||
|
updateCharge(o).then((res) => {
|
||||||
|
if (res.code === 200) {
|
||||||
|
this.visible = false
|
||||||
|
this.$message.success(res.msg);
|
||||||
|
this.getData();
|
||||||
|
} else {
|
||||||
|
this.$message.error(res.msg);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
};
|
||||||
|
},
|
||||||
|
//修改模版的回显
|
||||||
|
detail(record) {
|
||||||
|
this.chosenModel = record.id
|
||||||
|
this.drawerModel = 2;
|
||||||
|
getChargeById({id: record.id}).then(res => {
|
||||||
|
let data = res.data;
|
||||||
|
this.addForm.name = data.name
|
||||||
|
this.chargingFunctionIds = data.functionList;
|
||||||
|
this.chargingTimeTypeIds = data.timeTypeList;
|
||||||
|
let arr = this.addForm.chargingTemplateFunctionTimeTypeDTO
|
||||||
|
let j = 0;
|
||||||
|
for(let i=0;i<arr.length;i++) {
|
||||||
|
if(this.chargingFunctionIds.indexOf(arr[i].chargingFunctionId)!= -1 &&
|
||||||
|
this.chargingTimeTypeIds.indexOf(arr[i].chargingTimeTypeId)!= -1) {
|
||||||
|
arr[i].unitPrice = data.chargingFunctionToTimeTypeVos[j].unitPrice;
|
||||||
|
j = j+1;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
this.addForm.chargingTemplateFunctionTimeTypeDTO = arr;
|
||||||
|
})
|
||||||
|
this.visible = true
|
||||||
|
},
|
||||||
|
//启用/禁用
|
||||||
|
onChange(record) {
|
||||||
|
let obj = {id: record.id}
|
||||||
|
onoffCharging(obj).then(() => {
|
||||||
|
this.getData()
|
||||||
|
})
|
||||||
|
},
|
||||||
|
//查询和重置
|
||||||
|
onSearch() {
|
||||||
|
this.getData()
|
||||||
|
},
|
||||||
|
onReset() {
|
||||||
|
this.form.name = '';
|
||||||
|
this.getData();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="less" scoped>
|
||||||
|
.columns {
|
||||||
|
display: flex;
|
||||||
|
justify-content: flex-start;
|
||||||
|
background: lightgrey;
|
||||||
|
.columns-item {
|
||||||
|
width: 160px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.model-item {
|
||||||
|
display: flex;
|
||||||
|
justify-content: flex-start;
|
||||||
|
.models {
|
||||||
|
width: 160px;
|
||||||
|
}
|
||||||
|
.models2 {
|
||||||
|
width: 320px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
@ -0,0 +1,122 @@
|
|||||||
|
<template>
|
||||||
|
<div class="main">
|
||||||
|
<div class="cardTitle">账单明细</div>
|
||||||
|
<a-divider />
|
||||||
|
<div class="content">
|
||||||
|
<a-descriptions title="账单信息" :column="3">
|
||||||
|
<a-descriptions-item label="订单号">
|
||||||
|
{{infoList.code}}
|
||||||
|
</a-descriptions-item>
|
||||||
|
<a-descriptions-item label="公司全称">
|
||||||
|
{{infoList.companyName}}
|
||||||
|
</a-descriptions-item>
|
||||||
|
<a-descriptions-item label="绑定账户">
|
||||||
|
{{infoList.userName}}
|
||||||
|
</a-descriptions-item>
|
||||||
|
<a-descriptions-item label="绑定小区">
|
||||||
|
{{infoList.communityName}}
|
||||||
|
</a-descriptions-item>
|
||||||
|
<a-descriptions-item label="小区地址">
|
||||||
|
{{infoList.communityAddress}}
|
||||||
|
</a-descriptions-item>
|
||||||
|
<a-descriptions-item label="购买功能">
|
||||||
|
<a-tag v-for="(item, index) in infoList.includeFunctionModelList" :key="index">
|
||||||
|
{{item}}
|
||||||
|
</a-tag>
|
||||||
|
</a-descriptions-item>
|
||||||
|
<a-descriptions-item label="时间备注">
|
||||||
|
{{infoList.remakes}}
|
||||||
|
</a-descriptions-item>
|
||||||
|
<a-descriptions-item label="支付方式">
|
||||||
|
{{infoList.payType == 1 ? '线上' : (infoList.payType == 2 ? '支付宝' : '微信')}}
|
||||||
|
</a-descriptions-item>
|
||||||
|
<a-descriptions-item label="支付金额">
|
||||||
|
{{infoList.price}} 元
|
||||||
|
</a-descriptions-item>
|
||||||
|
<a-descriptions-item label="购买时间">
|
||||||
|
{{infoList.buyingDate}}
|
||||||
|
</a-descriptions-item>
|
||||||
|
<a-descriptions-item label="有效期至">
|
||||||
|
{{infoList.expirationDate}}
|
||||||
|
</a-descriptions-item>
|
||||||
|
</a-descriptions>
|
||||||
|
<a-divider></a-divider>
|
||||||
|
<a-descriptions title="退款记录">
|
||||||
|
</a-descriptions>
|
||||||
|
<a-table :columns="columns" :data-source="tableData" :row-key="(record,index) => {return index}">
|
||||||
|
<span slot="payment" slot-scope="scope">
|
||||||
|
<div v-if="scope == 1">线上</div>
|
||||||
|
<div v-if="scope == 2">支付宝</div>
|
||||||
|
<div v-if="scope == 3">微信</div>
|
||||||
|
</span>
|
||||||
|
</a-table>
|
||||||
|
<div class="footer">
|
||||||
|
<a-space style="margin-left: 70%">
|
||||||
|
<a-button type="primary">导出</a-button>
|
||||||
|
<a-button @click="goBack">返回</a-button>
|
||||||
|
</a-space>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import {getOrderDetail} from "@/api/manage"
|
||||||
|
export default {
|
||||||
|
name: "billDetail",
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
form: {
|
||||||
|
id: 0,
|
||||||
|
},
|
||||||
|
infoList: [],
|
||||||
|
//退款
|
||||||
|
columns: [
|
||||||
|
{
|
||||||
|
title: "退款时间",
|
||||||
|
dataIndex: "refundDate",
|
||||||
|
width: "200",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "退款金额",
|
||||||
|
dataIndex: "price",
|
||||||
|
width: "200",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "退款原因",
|
||||||
|
dataIndex: "reason",
|
||||||
|
width: "200",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "退款方式",
|
||||||
|
dataIndex: "type",
|
||||||
|
width: "200",
|
||||||
|
scopedSlots: { customRender: "payment" },
|
||||||
|
},
|
||||||
|
],
|
||||||
|
tableData: [],
|
||||||
|
}
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
this.form.id = this.$route.query.id;
|
||||||
|
this.getData();
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
getData() {
|
||||||
|
let obj = Object.assign({}, this.form)
|
||||||
|
getOrderDetail(obj).then(res => {
|
||||||
|
let data = res.data;
|
||||||
|
this.infoList = data;
|
||||||
|
this.tableData = data.financialStatementsDetailRefundVoList
|
||||||
|
})
|
||||||
|
},
|
||||||
|
goBack() {
|
||||||
|
this.$router.go(-1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
|
||||||
|
</style>
|
@ -0,0 +1,153 @@
|
|||||||
|
<template>
|
||||||
|
<div class="main">
|
||||||
|
<div class="cardTitle">退款订单</div>
|
||||||
|
<div class="content">
|
||||||
|
<a-descriptions style="padding: 12px" title="退款信息" :column="3">
|
||||||
|
<a-descriptions-item label="订单号">
|
||||||
|
{{infoList.code}}
|
||||||
|
</a-descriptions-item>
|
||||||
|
<a-descriptions-item label="公司信息">
|
||||||
|
{{infoList.companyName}}
|
||||||
|
</a-descriptions-item>
|
||||||
|
<a-descriptions-item label="小区信息">
|
||||||
|
{{infoList.communityName}}
|
||||||
|
</a-descriptions-item>
|
||||||
|
<a-descriptions-item label="小区地址">
|
||||||
|
{{infoList.communityAddress}}
|
||||||
|
</a-descriptions-item>
|
||||||
|
</a-descriptions>
|
||||||
|
<a-divider></a-divider>
|
||||||
|
<div class="payback-content">
|
||||||
|
<a-form-model :labelCol="{span: 2}" :wrapperCol="{span: 5,offset: 0}">
|
||||||
|
<a-form-model-item label="取消功能模块:">
|
||||||
|
<a-checkbox-group :options="modelType" @change="modelChange" />
|
||||||
|
</a-form-model-item>
|
||||||
|
<a-form-model-item label="退款金额">
|
||||||
|
<a-input-number v-model="paybackForm.price"></a-input-number>
|
||||||
|
</a-form-model-item>
|
||||||
|
<a-form-model-item label="退款方式">
|
||||||
|
<a-select v-model="paybackForm.type" placeholder="请选择退款方式">
|
||||||
|
<a-select-option :value="1">
|
||||||
|
线上
|
||||||
|
</a-select-option>
|
||||||
|
<a-select-option :value="2">
|
||||||
|
支付宝
|
||||||
|
</a-select-option>
|
||||||
|
<a-select-option :value="3">
|
||||||
|
微信
|
||||||
|
</a-select-option>
|
||||||
|
</a-select>
|
||||||
|
</a-form-model-item>
|
||||||
|
<a-form-model-item label="退款原因">
|
||||||
|
<a-textarea placeholder="请输入退款原因" v-model="paybackForm.reason"></a-textarea>
|
||||||
|
</a-form-model-item>
|
||||||
|
</a-form-model>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="footer">
|
||||||
|
<a-space style="margin-left: 70%">
|
||||||
|
<a-button @click="handlerConfirm" type="primary">确定</a-button>
|
||||||
|
<a-button @click="goBack">取消</a-button>
|
||||||
|
</a-space>
|
||||||
|
</div>
|
||||||
|
<a-modal
|
||||||
|
title="确认退款信息"
|
||||||
|
:visible="auditShow"
|
||||||
|
@ok="auditSubmit"
|
||||||
|
@cancel="auditCancel"
|
||||||
|
>
|
||||||
|
<div class="content">
|
||||||
|
<a-descriptions :column="1">
|
||||||
|
<a-descriptions-item label="退款金额">
|
||||||
|
{{paybackForm.price}} 元
|
||||||
|
</a-descriptions-item>
|
||||||
|
<a-descriptions-item label="退款方式">
|
||||||
|
{{paybackForm.type == 1 ? '线上' : (paybackForm.type == 2 ? '支付宝' : '微信')}}
|
||||||
|
</a-descriptions-item>
|
||||||
|
<a-descriptions-item label="退款原因">
|
||||||
|
{{paybackForm.reason}}
|
||||||
|
</a-descriptions-item>
|
||||||
|
</a-descriptions>
|
||||||
|
</div>
|
||||||
|
</a-modal>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import {getPayback} from "@/api/manage";
|
||||||
|
import {postRefund} from "@/api/manage";
|
||||||
|
export default {
|
||||||
|
name: "billDetail",
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
form: {
|
||||||
|
id: 0,
|
||||||
|
},
|
||||||
|
infoList: [],
|
||||||
|
paybackForm: {
|
||||||
|
functionOrderId: undefined,
|
||||||
|
chargingFunctionIds: '',
|
||||||
|
type: 1,
|
||||||
|
price: 0,
|
||||||
|
reason: '',
|
||||||
|
},
|
||||||
|
auditShow: false,
|
||||||
|
modelType: [],
|
||||||
|
}
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
this.form.id = this.$route.query.id;
|
||||||
|
this.paybackForm.functionOrderId = this.$route.query.id;
|
||||||
|
this.getData();
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
getData() {
|
||||||
|
let obj = Object.assign({}, this.form)
|
||||||
|
getPayback(obj).then(res => {
|
||||||
|
let data = res.data;
|
||||||
|
this.infoList = data;
|
||||||
|
let modelType = [];
|
||||||
|
data.chooseFunctionModelVoList.forEach(ele => {
|
||||||
|
let obj = {label: ele.name, value: ele.id};
|
||||||
|
modelType.push(obj)
|
||||||
|
});
|
||||||
|
this.modelType = modelType
|
||||||
|
})
|
||||||
|
},
|
||||||
|
modelChange(val) {
|
||||||
|
let chargingFunctionIds = val.toString();
|
||||||
|
this.paybackForm.chargingFunctionIds = chargingFunctionIds
|
||||||
|
},
|
||||||
|
//确认框
|
||||||
|
handlerConfirm() {
|
||||||
|
this.auditShow = true;
|
||||||
|
},
|
||||||
|
goBack() {
|
||||||
|
this.$router.go(-1);
|
||||||
|
},
|
||||||
|
auditSubmit() {
|
||||||
|
postRefund(this.paybackForm).then((res) => {
|
||||||
|
if (res.code === 200) {
|
||||||
|
this.$message.success(res.msg);
|
||||||
|
this.$router.go(-1);
|
||||||
|
} else {
|
||||||
|
this.$message.error(res.msg);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
this.auditShow = false;
|
||||||
|
},
|
||||||
|
auditCancel() {
|
||||||
|
this.auditShow = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="less">
|
||||||
|
.payback-content {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
.btn-container {
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
</style>
|
@ -0,0 +1,176 @@
|
|||||||
|
<template>
|
||||||
|
<div class="main">
|
||||||
|
<div class="cardTitle">财务账单</div>
|
||||||
|
<div class="search-box">
|
||||||
|
<a-space size="large">
|
||||||
|
<a-form-model layout="inline">
|
||||||
|
<a-form-model-item label="订单时间范围">
|
||||||
|
<a-date-picker v-model="form.createDateStart" placeholder="请选择开始时间" /> ——
|
||||||
|
<a-date-picker v-model="form.createDateEnd" placeholder="请选择结束时间" />
|
||||||
|
</a-form-model-item>
|
||||||
|
<a-form-model-item label="购买时间范围">
|
||||||
|
<a-date-picker v-model="form.buyingDateStart" placeholder="请选择开始时间" /> ——
|
||||||
|
<a-date-picker v-model="form.buyingDateEnd" placeholder="请选择结束时间" />
|
||||||
|
</a-form-model-item>
|
||||||
|
</a-form-model>
|
||||||
|
</a-space>
|
||||||
|
</div>
|
||||||
|
<div class="search-box">
|
||||||
|
<a-space size="large">
|
||||||
|
<a-form-model layout="inline">
|
||||||
|
<a-form-model-item label="订单号">
|
||||||
|
<a-input v-model="form.code" placeholder="请输入订单号" />
|
||||||
|
</a-form-model-item>
|
||||||
|
<a-form-model-item label="公司名称">
|
||||||
|
<a-input v-model="form.name" placeholder="请输入公司名称" />
|
||||||
|
</a-form-model-item>
|
||||||
|
</a-form-model>
|
||||||
|
<a-button @click="onSearch" type="primary">查 询</a-button>
|
||||||
|
<a-button @click="onReset">重 置</a-button>
|
||||||
|
</a-space>
|
||||||
|
</div>
|
||||||
|
<div id="commonTable">
|
||||||
|
<a-table
|
||||||
|
:scroll="{ x: 1300 }"
|
||||||
|
:columns="columns"
|
||||||
|
:data-source="tableData"
|
||||||
|
:pagination="pagination"
|
||||||
|
@change="handleTableChange"
|
||||||
|
:row-key="
|
||||||
|
(record, index) => {
|
||||||
|
return index;
|
||||||
|
}
|
||||||
|
"
|
||||||
|
>
|
||||||
|
<span slot="tags" slot-scope="text, record">
|
||||||
|
<a-tag v-for="(item, index) in record.includeFunctionModelList" :key="index" :color="colors[index] ? colors[index] : 'black'">
|
||||||
|
{{item}}
|
||||||
|
</a-tag>
|
||||||
|
</span>
|
||||||
|
<span slot="action" slot-scope="text,record">
|
||||||
|
<a @click="payback(record)">退款</a>
|
||||||
|
<span style="margin: 5px">|</span>
|
||||||
|
<a @click="billDetail(record)">账单明细</a>
|
||||||
|
</span>
|
||||||
|
</a-table>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import {getAllList} from "@/api/manage"
|
||||||
|
export default {
|
||||||
|
name: "chagingStandard",
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
form: {
|
||||||
|
pageNum: 1,
|
||||||
|
size: 10,
|
||||||
|
code: '',
|
||||||
|
name: '',
|
||||||
|
createDateStart: '',
|
||||||
|
createDateEnd: '',
|
||||||
|
buyingDateStart: '',
|
||||||
|
buyingDateEnd: ''
|
||||||
|
},
|
||||||
|
tableData: [],
|
||||||
|
colors: ['volcano','orange','yellow','green','blue','purple','grey'],
|
||||||
|
columns: [
|
||||||
|
{
|
||||||
|
title: "订单号",
|
||||||
|
dataIndex: "code",
|
||||||
|
width: 150,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "公司名称",
|
||||||
|
dataIndex: "name",
|
||||||
|
width: 150,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "付款金额",
|
||||||
|
dataIndex: "payPrice",
|
||||||
|
width: 150,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "包含功能模块",
|
||||||
|
dataIndex: "includeFunctionModelList",
|
||||||
|
scopedSlots: { customRender: "tags" },
|
||||||
|
width: 350,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "订单生成时间",
|
||||||
|
dataIndex: "createDate",
|
||||||
|
width: 160,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "操作",
|
||||||
|
dataIndex: "action",
|
||||||
|
key: "action",
|
||||||
|
width: 180,
|
||||||
|
fixed: "right",
|
||||||
|
scopedSlots: { customRender: "action" },
|
||||||
|
},
|
||||||
|
],
|
||||||
|
pagination: {
|
||||||
|
current: 1,
|
||||||
|
total: 0,
|
||||||
|
pageSize: 10,
|
||||||
|
showTotal: (total) => `共 ${total} 条`,
|
||||||
|
showSizeChanger: true,
|
||||||
|
showQuickJumper: true,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
this.getData()
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
getData() {
|
||||||
|
getAllList(this.form).then(res => {
|
||||||
|
this.pagination.total = res.data.total;
|
||||||
|
let data = res.data.rows;
|
||||||
|
this.tableData = data;
|
||||||
|
})
|
||||||
|
},
|
||||||
|
//分页
|
||||||
|
handleTableChange(pagination) {
|
||||||
|
this.form.size = pagination.pageSize;
|
||||||
|
this.form.pageNum = pagination.current;
|
||||||
|
this.getData();
|
||||||
|
},
|
||||||
|
//查询和重置
|
||||||
|
onSearch() {
|
||||||
|
this.getData()
|
||||||
|
},
|
||||||
|
onReset() {
|
||||||
|
this.form.name = '';
|
||||||
|
this.getData();
|
||||||
|
},
|
||||||
|
//退款和详情
|
||||||
|
payback(record) {
|
||||||
|
this.$router.push(
|
||||||
|
{
|
||||||
|
name:'_payback',
|
||||||
|
query: {
|
||||||
|
id: record.id
|
||||||
|
}
|
||||||
|
}
|
||||||
|
)
|
||||||
|
},
|
||||||
|
billDetail(record) {
|
||||||
|
this.$router.push(
|
||||||
|
{
|
||||||
|
name:'_billDetail',
|
||||||
|
query: {
|
||||||
|
id: record.id
|
||||||
|
}
|
||||||
|
}
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="less" scoped>
|
||||||
|
|
||||||
|
</style>
|
@ -0,0 +1,13 @@
|
|||||||
|
<template>
|
||||||
|
<router-view></router-view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
|
||||||
|
</style>
|
@ -0,0 +1,228 @@
|
|||||||
|
<template>
|
||||||
|
<div class="main">
|
||||||
|
<div class="main-content">
|
||||||
|
<div class="cardTitle">添加订单信息</div>
|
||||||
|
<div class="content">
|
||||||
|
<a-form-model :labelCol="{span: 2}" :wrapperCol="{span: 8}">
|
||||||
|
<a-form-model-item label="订单号">
|
||||||
|
<a-input v-model="form.code" ></a-input>
|
||||||
|
</a-form-model-item>
|
||||||
|
<a-form-model-item label="支付类型">
|
||||||
|
<a-select v-model="form.payType">
|
||||||
|
<a-select-option :value="1">线下</a-select-option>
|
||||||
|
<a-select-option :value="2">支付宝</a-select-option>
|
||||||
|
<a-select-option :value="3">微信</a-select-option>
|
||||||
|
</a-select>
|
||||||
|
</a-form-model-item>
|
||||||
|
<a-form-model-item label="选择收费模版">
|
||||||
|
<a-select v-model="form.chargingTemplateId" @change="modelChange">
|
||||||
|
<a-select-option :value="item.id" v-for="(item, index) in modelData" :key="index">
|
||||||
|
{{item.name}}
|
||||||
|
</a-select-option>
|
||||||
|
</a-select>
|
||||||
|
</a-form-model-item>
|
||||||
|
<a-form-model-item label="选择功能模块">
|
||||||
|
<a-checkbox-group v-model="form.modelFunctionId" :options="functionType" @change="functionChange" />
|
||||||
|
</a-form-model-item>
|
||||||
|
<a-form-model-item label="选择有效时长">
|
||||||
|
<a-select v-model="form.timeTypeId" @change="timeChange">
|
||||||
|
<a-select-option :value="item.id" v-for="(item, index) in timeType" :key="index">
|
||||||
|
<!-- {{item.years == 0 ? '' : item.years+'年'}}
|
||||||
|
{{item.months == 0 ? '' : item.months+'个月'}}
|
||||||
|
{{item.days == 0 ? '' : item.days+'天'}} -->
|
||||||
|
{{item.name}}
|
||||||
|
</a-select-option>
|
||||||
|
</a-select>
|
||||||
|
</a-form-model-item>
|
||||||
|
<a-form-model-item label="购买金额">
|
||||||
|
<span style="color: red">¥ {{form.payPrice}}</span>
|
||||||
|
</a-form-model-item>
|
||||||
|
<a-form-model-item label="选择公司">
|
||||||
|
<a-select v-model="form.companyId" @change="boundCom">
|
||||||
|
<a-select-option :value="item.id" v-for="(item, index) in companyData" :key="index">
|
||||||
|
{{item.companyName}}
|
||||||
|
</a-select-option>
|
||||||
|
</a-select>
|
||||||
|
</a-form-model-item>
|
||||||
|
<a-form-model-item label="绑定小区">
|
||||||
|
<a-select v-model="form.communityId">
|
||||||
|
<a-select-option :value="item.id" v-for="(item, index) in comData" :key="index">
|
||||||
|
{{item.companyName}}
|
||||||
|
</a-select-option>
|
||||||
|
</a-select>
|
||||||
|
</a-form-model-item>
|
||||||
|
</a-form-model>
|
||||||
|
</div>
|
||||||
|
<div class="cardTitle">高级配置</div>
|
||||||
|
<div class="content">
|
||||||
|
<a-form-model :labelCol="{span: 2}" :wrapperCol="{span: 8}">
|
||||||
|
<a-form-model-item label="域名">
|
||||||
|
<a-input v-model="form.domainName" style="width: 394px"></a-input>
|
||||||
|
</a-form-model-item>
|
||||||
|
<a-form-model-item label="服务器ip">
|
||||||
|
<a-input v-model="form.serviceIp" style="width: 394px"></a-input>
|
||||||
|
</a-form-model-item>
|
||||||
|
<a-form-model-item label="是否定制">
|
||||||
|
<a-select v-model="form.isCustomized" style="width: 394px" @change="textareaDisable">
|
||||||
|
<a-select-option :value="0">
|
||||||
|
不定制
|
||||||
|
</a-select-option>
|
||||||
|
<a-select-option :value="1">
|
||||||
|
定制
|
||||||
|
</a-select-option>
|
||||||
|
</a-select>
|
||||||
|
</a-form-model-item>
|
||||||
|
<a-form-model-item label="定制需求">
|
||||||
|
<a-textarea v-model="form.customizedDemand" style="width: 394px" :disabled="form.isCustomized == 0" placeholder="请填写定制需求">
|
||||||
|
</a-textarea>
|
||||||
|
</a-form-model-item>
|
||||||
|
</a-form-model>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<a-space style="margin-left: 138px">
|
||||||
|
<a-button type="primary" @click="addConfirm">创建订单</a-button>
|
||||||
|
<a-button @click="cancel">取消</a-button>
|
||||||
|
</a-space>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import {getAllRequest,getComById, createOrder, calcAmount} from "@/api/manage";
|
||||||
|
import {getChargingList, getChargeById} from "@/api/manage";
|
||||||
|
import {findTimeType, findSuperNavigation} from "@/api/manage";
|
||||||
|
export default {
|
||||||
|
name: "addOrder",
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
form: {
|
||||||
|
code: '',
|
||||||
|
payType: 1,
|
||||||
|
chargingTemplateId: undefined,
|
||||||
|
modelFunctionId: [],
|
||||||
|
timeTypeId: undefined,
|
||||||
|
payPrice: 0,
|
||||||
|
companyId: undefined,
|
||||||
|
communityId: undefined,
|
||||||
|
domainName: '',
|
||||||
|
serviceIp: '',
|
||||||
|
isCustomized: 0, //定制
|
||||||
|
customizedDemand: '' //定制需求
|
||||||
|
},
|
||||||
|
//公司列表
|
||||||
|
companyData: [],
|
||||||
|
comData: [], //小区列表
|
||||||
|
//功能列表
|
||||||
|
functionType: [], //选项
|
||||||
|
allFunctionType: [],
|
||||||
|
//时长列表
|
||||||
|
timeType: [],
|
||||||
|
allTimeType: [],
|
||||||
|
//收费模版
|
||||||
|
modelData: [],
|
||||||
|
}
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
this.getApi();
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
getApi() {
|
||||||
|
let obj = {pageNum: 1,size: 1000};
|
||||||
|
getAllRequest(obj).then(res => {
|
||||||
|
let data = res.data.rows
|
||||||
|
this.companyData = data;
|
||||||
|
});
|
||||||
|
let o = {pageNum: 1,size: 1000, status: 1}
|
||||||
|
getChargingList(o).then(res => {
|
||||||
|
let data = res.data.rows;
|
||||||
|
this.modelData = data
|
||||||
|
})
|
||||||
|
findTimeType().then(res => {
|
||||||
|
let data = res.data;
|
||||||
|
this.allTimeType = data
|
||||||
|
})
|
||||||
|
findSuperNavigation().then(res => {
|
||||||
|
let data = res.data;
|
||||||
|
this.allFunctionType = data;
|
||||||
|
})
|
||||||
|
},
|
||||||
|
getPrice() {
|
||||||
|
if(this.form.chargingTemplateId && this.form.modelFunctionId && this.form.timeTypeId) {
|
||||||
|
let obj = {
|
||||||
|
chargingTemplateId: this.form.chargingTemplateId,
|
||||||
|
modelFunctionId: this.form.modelFunctionId,
|
||||||
|
timeTypeId: this.form.timeTypeId
|
||||||
|
};
|
||||||
|
calcAmount(obj).then(res => {
|
||||||
|
let data = res.data;
|
||||||
|
this.form.payPrice = data * 1
|
||||||
|
});
|
||||||
|
}
|
||||||
|
},
|
||||||
|
modelChange(val) {
|
||||||
|
this.form.timeTypeId = undefined;
|
||||||
|
this.form.modelFunctionId = [];
|
||||||
|
this.form.communityId = undefined;
|
||||||
|
getChargeById({id: val}).then(res => {
|
||||||
|
let data = res.data;
|
||||||
|
let functionData = [];
|
||||||
|
data.functionList.forEach(ele => {
|
||||||
|
this.allFunctionType.forEach(e => {
|
||||||
|
if(e.id == ele) {
|
||||||
|
let obj = {label: e.name,value: e.id}
|
||||||
|
functionData.push(obj);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
this.functionType = functionData;
|
||||||
|
let timeData = [];
|
||||||
|
data.timeTypeList.forEach(ele => {
|
||||||
|
this.allTimeType.forEach(e => {
|
||||||
|
if(e.id == ele) {
|
||||||
|
let year = e.years == 0 ? '' : e.years+'年';
|
||||||
|
let month = e.months == 0 ? '' : e.months+'个月';
|
||||||
|
let day = e.days == 0 ? '' : e.days+'天';
|
||||||
|
let obj = {name: year+month+day,id: e.id}
|
||||||
|
timeData.push(obj);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
this.timeType = timeData;
|
||||||
|
});
|
||||||
|
this.getPrice();
|
||||||
|
},
|
||||||
|
timeChange(val) {
|
||||||
|
this.getPrice();
|
||||||
|
},
|
||||||
|
// 选择功能模块
|
||||||
|
functionChange(val) {
|
||||||
|
// console.log(val)
|
||||||
|
},
|
||||||
|
textareaDisable(val) {
|
||||||
|
if(val == 0) {
|
||||||
|
this.form.customizedDemand = ''
|
||||||
|
}
|
||||||
|
},
|
||||||
|
//绑定小区
|
||||||
|
boundCom(val) {
|
||||||
|
getComById(val).then(res => {
|
||||||
|
let data = res.data;
|
||||||
|
this.comData = data
|
||||||
|
})
|
||||||
|
},
|
||||||
|
addConfirm() {
|
||||||
|
createOrder(this.form).then(() => {
|
||||||
|
this.$router.go(-1);
|
||||||
|
})
|
||||||
|
},
|
||||||
|
cancel() {
|
||||||
|
this.$router.go(-1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="less">
|
||||||
|
.main-content {
|
||||||
|
margin-left: 125px;
|
||||||
|
}
|
||||||
|
</style>
|
@ -0,0 +1,15 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
test
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
name: "orderDetail"
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
|
||||||
|
</style>
|
@ -0,0 +1,196 @@
|
|||||||
|
<template>
|
||||||
|
<div class="main">
|
||||||
|
<div class="cardTitle">订单管理</div>
|
||||||
|
<div class="search-box">
|
||||||
|
<a-space size="large">
|
||||||
|
<a-form-model layout="inline">
|
||||||
|
<a-form-model-item label="订单号">
|
||||||
|
<a-input v-model="form.code" placeholder="请输入订单号" />
|
||||||
|
</a-form-model-item>
|
||||||
|
<a-form-model-item label="企业名称">
|
||||||
|
<a-input v-model="form.name" placeholder="请输入企业名称" />
|
||||||
|
</a-form-model-item>
|
||||||
|
<a-form-model-item label="定制类型">
|
||||||
|
<a-select v-model="form.isCustomized" style="width: 200px" placeholder="类型">
|
||||||
|
<a-select-option :value="1">定制</a-select-option>
|
||||||
|
<a-select-option :value="0">不定制</a-select-option>
|
||||||
|
</a-select>
|
||||||
|
</a-form-model-item>
|
||||||
|
<a-form-model-item label="订单状态">
|
||||||
|
<a-select v-model="form.status" style="width: 200px" placeholder="订单状态">
|
||||||
|
<a-select-option :value="0">待支付</a-select-option>
|
||||||
|
<a-select-option :value="1">支付超时</a-select-option>
|
||||||
|
<a-select-option :value="2">支付成功</a-select-option>
|
||||||
|
<a-select-option :value="3">交易结束不可退款</a-select-option>
|
||||||
|
</a-select>
|
||||||
|
</a-form-model-item>
|
||||||
|
</a-form-model>
|
||||||
|
<a-button type="primary" @click="handlerSearch">查 询</a-button>
|
||||||
|
<a-button @click="handlerReset">重 置</a-button>
|
||||||
|
</a-space>
|
||||||
|
</div>
|
||||||
|
<div id="commonTable">
|
||||||
|
<div style="margin-bottom: 16px">
|
||||||
|
<a-button icon="plus" @click="addOrder" type="primary" ghost>
|
||||||
|
新建订单
|
||||||
|
</a-button>
|
||||||
|
</div>
|
||||||
|
<a-table
|
||||||
|
:scroll="{ x: 1300 }"
|
||||||
|
:columns="columns"
|
||||||
|
:data-source="tableData"
|
||||||
|
:pagination="pagination"
|
||||||
|
@change="handleTableChange"
|
||||||
|
:row-key="
|
||||||
|
(record, index) => {
|
||||||
|
return index;
|
||||||
|
}
|
||||||
|
"
|
||||||
|
>
|
||||||
|
<!-- 操作 -->
|
||||||
|
<span slot="tags" slot-scope="text, record">
|
||||||
|
<a-tag v-for="(item, index) in record.includeFunctionModelList" :key="index" :color="colors[index] ? colors[index] : 'black'">
|
||||||
|
{{item}}
|
||||||
|
</a-tag>
|
||||||
|
</span>
|
||||||
|
<span slot="type" slot-scope="scope">
|
||||||
|
{{scope === 1 ? "定制" : "不定制"}}
|
||||||
|
</span>
|
||||||
|
<span slot="formatter" slot-scope="scope">{{
|
||||||
|
scope === 1 ? "支付超时" : (scope === 2 ? "已支付" : "待支付")
|
||||||
|
}}</span>
|
||||||
|
<span slot="action" slot-scope="text,record">
|
||||||
|
<a-popconfirm title="确定要解绑吗?" @confirm="unbound(record)" @cancel="() => {return}">
|
||||||
|
<a>解绑小区</a>
|
||||||
|
</a-popconfirm>
|
||||||
|
</span>
|
||||||
|
</a-table>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import { consoleShow } from "@/api/basic/console";
|
||||||
|
import {getAllOrder,orderUnbound} from "@/api/manage/index.js"
|
||||||
|
export default {
|
||||||
|
name: "",
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
form: {
|
||||||
|
pageNum: 1,
|
||||||
|
size: 10,
|
||||||
|
code: '',
|
||||||
|
name: '',
|
||||||
|
isCustomized: 0,
|
||||||
|
status: 0,
|
||||||
|
},
|
||||||
|
//颜色列表
|
||||||
|
colors: ['volcano','orange','yellow','green','blue','purple','grey'],
|
||||||
|
columns: [
|
||||||
|
{
|
||||||
|
title: "订单号",
|
||||||
|
dataIndex: "code",
|
||||||
|
width: 180,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "公司名",
|
||||||
|
dataIndex: "name",
|
||||||
|
width: 180,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "类型",
|
||||||
|
dataIndex: "isCustomized",
|
||||||
|
scopedSlots: { customRender: "type" },
|
||||||
|
width: 180,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "包含功能模块",
|
||||||
|
dataIndex: "includeFunctionModelList",
|
||||||
|
scopedSlots: { customRender: "tags" },
|
||||||
|
width: 400,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "状态",
|
||||||
|
dataIndex: "status",
|
||||||
|
scopedSlots: { customRender: "formatter" },
|
||||||
|
width: 120,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "操作",
|
||||||
|
dataIndex: "action",
|
||||||
|
key: "action",
|
||||||
|
width: 180,
|
||||||
|
fixed: "right",
|
||||||
|
scopedSlots: { customRender: "action" },
|
||||||
|
},
|
||||||
|
],
|
||||||
|
// 数据
|
||||||
|
tableData: [],
|
||||||
|
// 分页
|
||||||
|
pagination: {
|
||||||
|
current: 1,
|
||||||
|
total: 0,
|
||||||
|
pageSize: 10,
|
||||||
|
showTotal: (total) => `共 ${total} 条`,
|
||||||
|
showSizeChanger: true,
|
||||||
|
showQuickJumper: true,
|
||||||
|
},
|
||||||
|
loading: false,
|
||||||
|
selectedRowKeys: [],
|
||||||
|
}
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
consoleShow().then(res => {
|
||||||
|
// console.log(res)
|
||||||
|
})
|
||||||
|
this.getData();
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
getData() {
|
||||||
|
getAllOrder(this.form).then(res => {
|
||||||
|
this.pagination.total = res.data.total;
|
||||||
|
let data = res.data.rows;
|
||||||
|
this.tableData = data;
|
||||||
|
})
|
||||||
|
},
|
||||||
|
//查询
|
||||||
|
handlerSearch() {
|
||||||
|
this.getData()
|
||||||
|
},
|
||||||
|
//重置
|
||||||
|
handlerReset() {
|
||||||
|
this.form.code = '',
|
||||||
|
this.form.name = '',
|
||||||
|
this.form.isCustomized = 0,
|
||||||
|
this.form.status = 0,
|
||||||
|
this.getData()
|
||||||
|
},
|
||||||
|
//分页
|
||||||
|
handleTableChange(pagination) {
|
||||||
|
this.form.size = pagination.pageSize;
|
||||||
|
this.form.pageNum = pagination.current;
|
||||||
|
this.getData();
|
||||||
|
},
|
||||||
|
//添加订单
|
||||||
|
addOrder() {
|
||||||
|
this.$router.push({name: 'add_order'})
|
||||||
|
},
|
||||||
|
//解绑
|
||||||
|
unbound(record) {
|
||||||
|
let obj = { adminFunctionOrderId : record.id }
|
||||||
|
orderUnbound(obj).then(res => {
|
||||||
|
if (res.code === 200) {
|
||||||
|
this.$message.success(res.msg);
|
||||||
|
this.getData();
|
||||||
|
} else {
|
||||||
|
this.$message.error(res.msg);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="less" scoped>
|
||||||
|
|
||||||
|
</style>
|
@ -0,0 +1,20 @@
|
|||||||
|
<template>
|
||||||
|
<div></div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
name: '',
|
||||||
|
mounted() {
|
||||||
|
// 创建支付宝调用页面
|
||||||
|
const div = document.createElement('div');
|
||||||
|
div.innerHTML = this.$route.query.htmls;
|
||||||
|
document.body.appendChild(div);
|
||||||
|
document.forms[0].submit();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
|
||||||
|
</style>
|
@ -0,0 +1,15 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
test
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
|
||||||
|
</style>
|
@ -0,0 +1,13 @@
|
|||||||
|
<template>
|
||||||
|
<router-view></router-view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
|
||||||
|
</style>
|
@ -0,0 +1,5 @@
|
|||||||
|
"<form name="punchout_form" method="post" action="https://openapi.alipay.com/gateway.do?charset=UTF-8&method=alipay.trade.page.pay&sign=B5HCq8qiiwkOfH%2FwKaKwxMeExsKFcibdK4oLcz5ypYxqSKcXn0KfqEBcW3u2219sqKKuzFNZGuT5%2F%2BK%2FO3RCeQGUBalM2JdknrI7MiJ4%2B3CvBfyLKDuwZd0SRu7xaPb0VkjIkgbn9g4vpufQaezq19lErd7LCL7wMu14%2FduswqptCQW9bYn%2F4uhTEcgm%2FTu3Ab17fEe3DKSHqG2VqjhzxhViRENB9wZ6Nvq6LltDHJF5QGBbellwvv%2BGikwYAyghtVwc61GJuagldqtlT4fP0zmUIpA1dj4ctUQuyfMYuBIzFbT3TuGDksJFfKQJ17FJkT9kSZYTJZy%2F2wN1Vdl3nQ%3D%3D¬ify_url=http%3A%2F%2Fsaas.kaidalai.cn%2Fapi%2Fadmin%2Falipay%2FnotifyInfo%2FbalanceRechargeOrderNotifyInfo&version=1.0&app_id=2021003124652865&sign_type=RSA2×tamp=2022-04-02+10%3A46%3A20&alipay_sdk=alipay-sdk-java-3.1.0&format=json">
|
||||||
|
<input type="hidden" name="biz_content" value="{"body":"商城购物支付","out_trade_no":"CZ20220402104620169001","product_code":"QUICK_MSECURITY_PAY","subject":"商城购物","timeout_express":"30m","total_amount":"0.6"}">
|
||||||
|
<input type="submit" value="立即支付" style="display:none" >
|
||||||
|
</form>
|
||||||
|
<script>document.forms[0].submit();</script>"
|
Loading…
Reference in new issue