Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
S
shops
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
物业总平台
shops
Commits
88901a12
提交
88901a12
authored
8月 25, 2023
作者:
赵明
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
结算管理
上级
7f5e1fa4
显示空白字符变更
内嵌
并排
正在显示
8 个修改的文件
包含
633 行增加
和
705 行删除
+633
-705
api.js
src/api/api.js
+8
-0
static.js
src/assets/static.js
+7
-0
Analysis.vue
src/views/dashboard/Analysis.vue
+1
-1
IndexChart.vue
src/views/dashboard/IndexChart.vue
+0
-2
ReconciliationDetails.vue
...views/settlement/reconciliation/ReconciliationDetails.vue
+208
-0
reconciliationList.vue
src/views/settlement/reconciliation/reconciliationList.vue
+116
-225
settlementDetails.vue
src/views/settlement/settlements/settlementDetails.vue
+239
-273
settlementList.vue
src/views/settlement/settlements/settlementList.vue
+54
-204
没有找到文件。
src/api/api.js
浏览文件 @
88901a12
...
...
@@ -117,6 +117,11 @@ function getDictItemsFromCache(dictCode) {
}
}
//分利-申请对账
const
settlementApi
=
(
params
)
=>
postAction
(
"/property-central/partners/shareBenefit/reconciliation"
,
params
);
//分利-对账详情
const
settlementDetailApi
=
(
params
)
=>
getAction
(
"/property-central/partners/shareBenefit/queryById"
,
params
);
const
shareBalanceByDepId
=
(
params
)
=>
getAction
(
"/property-central/partners/shareBalance/queryById"
,
params
);
//系统通告
const
doReleaseData
=
(
params
)
=>
getAction
(
"/sys/annountCement/doReleaseData"
,
params
);
const
doReovkeData
=
(
params
)
=>
getAction
(
"/sys/annountCement/doReovkeData"
,
params
);
...
...
@@ -227,6 +232,9 @@ export {
dispatchCommunityRepairApi
,
querycommunityComplaintApi
,
auditCommunityComplaintApi
,
settlementApi
,
settlementDetailApi
,
shareBalanceByDepId
}
...
...
src/assets/static.js
浏览文件 @
88901a12
...
...
@@ -69,6 +69,13 @@ export const PAYMENT_METOD = [
{
label
:
'未支付'
,
value
:
1
},
{
label
:
'微信'
,
value
:
2
},
]
//对账状态
export
const
RECONCILIATION_STATUS
=
[
{
label
:
'未对账'
,
value
:
1
},
{
label
:
'对账待审核'
,
value
:
2
},
{
label
:
'对账通过完成'
,
value
:
3
},
{
label
:
'对账拒绝'
,
value
:
4
},
]
/**
* 翻译字段值对应的文本
* @param children
...
...
src/views/dashboard/Analysis.vue
浏览文件 @
88901a12
...
...
@@ -136,7 +136,7 @@ export default {
})
}
else
if
(
type
==
4
)
{
this
.
$router
.
push
({
path
:
'/
information/worker'
,
path
:
'/
settlement/reconciliation'
})
}
},
...
...
src/views/dashboard/IndexChart.vue
浏览文件 @
88901a12
<
template
>
<div
class=
"page-header-index-wide"
>
<div
class=
"map-box"
>
<h3
class=
"box-title"
>
社区分布数量图
</h3>
<div
ref=
"mapEcharts"
class=
"map-echart"
style=
"height: 500px"
></div>
</div>
</div>
</
template
>
<
script
>
...
...
src/views/settlement/reconciliation/ReconciliationDetails.vue
0 → 100644
浏览文件 @
88901a12
<
template
>
<a-spin
:spinning=
"confirmLoading"
>
<div
class=
"title-top"
>
<h3>
{{
title
}}
</h3>
<div
class=
"button"
>
<a-button
@
click=
"toReturn"
>
返回
</a-button>
</div>
</div>
<j-form-container
:disabled=
"true"
>
<a-form-model
ref=
"form"
:model=
"model"
slot=
"detail"
>
<a-card
title=
"基本信息"
>
<a-row>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"订单编号"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
>
<a-input
v-model=
"model.orderNum"
placeholder=
"订单编号"
></a-input>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"提交时间"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
>
<a-input
v-model=
"model.createTime"
placeholder=
"提交时间"
></a-input>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"买家名称"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
>
<a-input
v-model=
"model.buyerName"
placeholder=
"买家名称"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"分利金额"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
>
<a-input
v-model=
"model.shareMoney"
placeholder=
"分利金额"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"订单金额"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
>
<a-input
v-model=
"model.totalMoney"
placeholder=
"订单金额"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"支付方式"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
>
<a-input
v-model=
"model.payWay"
placeholder=
"支付方式"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"订单来源"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
>
<a-input
v-model=
"model.orderSourceName"
placeholder=
"订单来源"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"订单状态"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
>
<a-input
v-model=
"model.reconciliationStatusName"
placeholder=
"订单状态"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"所属平台"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
>
<a-input
v-model=
"model.propertyName"
placeholder=
"所属平台"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"所属小区"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
>
<a-input
v-model=
"model.communityName"
placeholder=
"所属小区"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"商铺名称"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
>
<a-input
v-model=
"model.shopName"
placeholder=
"商铺名称"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"合作伙伴名称"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
>
<a-input
v-model=
"model.partnersName"
placeholder=
"合作伙伴名称"
/>
</a-form-model-item>
</a-col>
</a-row>
</a-card>
</a-form-model>
</j-form-container>
<a-card
title=
"操作信息"
v-if=
"recordList.length > 0"
>
<a-table
ref=
"table"
size=
"middle"
:scroll=
"
{x:true}" bordered rowKey="id" :columns="columns"
:dataSource="recordList" :pagination="false" :loading="loading" class="j-table-force-nowrap">
<span
slot=
"payStatus"
slot-scope=
"text, record"
>
<template
v-if=
"record"
></
template
>
已付款
</span>
<span
slot=
"reconciliationStatus"
slot-scope=
"text, record"
>
<a-tag
v-if=
"record.reconciliationStatus === 1"
>
未对账
</a-tag>
<a-tag
v-else-if=
"record.reconciliationStatus === 2"
>
对账待审核
</a-tag>
<a-tag
v-else-if=
"record.reconciliationStatus === 3"
>
已对账
</a-tag>
<a-tag
v-else-if=
"record.reconciliationStatus === 4"
>
对账驳回
</a-tag>
</span>
</a-table>
</a-card>
</a-spin>
</template>
<
script
>
import
{
settlementDetailApi
}
from
'@/api/api'
export
default
{
name
:
'ReconciliationDetails'
,
inject
:
[
'closeCurrent'
],
data
()
{
return
{
title
:
'详情'
,
model
:
{},
labelCol
:
{
xs
:
{
span
:
24
},
sm
:
{
span
:
6
},
},
wrapperCol
:
{
xs
:
{
span
:
24
},
sm
:
{
span
:
16
},
},
confirmLoading
:
false
,
url
:
{
queryById
:
'/property-central/property/propertySettled/queryById'
,
},
loading
:
false
,
recordList
:
[],
columns
:
[
{
title
:
'操作人'
,
dataIndex
:
'createBy'
,
key
:
'createBy'
,
align
:
'center'
,
},
{
title
:
'操作时间'
,
dataIndex
:
'createTime'
,
key
:
'createTime'
,
align
:
'center'
,
},
{
title
:
'订单状态'
,
dataIndex
:
'reconciliationStatus'
,
scopedSlots
:
{
customRender
:
'reconciliationStatus'
},
key
:
'reconciliationStatus'
,
align
:
'center'
,
},
{
title
:
'付款状态'
,
dataIndex
:
'payStatus'
,
scopedSlots
:
{
customRender
:
'payStatus'
},
key
:
'payStatus'
,
align
:
'center'
,
},
{
title
:
'备注'
,
dataIndex
:
'remarks'
,
key
:
'remarks'
,
align
:
'center'
,
},
],
}
},
methods
:
{
async
getPageDetail
()
{
let
{
result
}
=
await
settlementDetailApi
({
id
:
this
.
$route
.
query
.
id
})
this
.
recordList
=
result
.
list
this
.
model
=
result
.
shareBenefit
if
(
this
.
model
.
orderSource
==
'miniapp'
)
{
this
.
model
.
orderSourceName
=
'小程序'
}
if
(
this
.
model
.
reconciliationStatus
==
1
)
{
this
.
model
.
reconciliationStatusName
=
'未对账'
}
else
if
(
this
.
model
.
reconciliationStatus
==
2
)
{
this
.
model
.
reconciliationStatusName
=
'对账待审核'
}
else
if
(
this
.
model
.
reconciliationStatus
==
3
)
{
this
.
model
.
reconciliationStatusName
=
'已对账'
}
else
if
(
this
.
model
.
reconciliationStatus
==
4
)
{
this
.
model
.
reconciliationStatusName
=
'对账驳回'
}
},
toReturn
()
{
this
.
closeCurrent
()
this
.
$router
.
go
(
-
1
)
},
},
mounted
()
{
if
(
this
.
$route
.
query
.
id
)
{
this
.
getPageDetail
()
}
},
}
</
script
>
<
style
lang=
"less"
scoped
>
.title-top {
background: #fff;
padding: 0 25px;
line-height: 50px;
height: 50px;
margin-bottom: 5px;
h3 {
font-weight: bold;
display: inline-block;
}
.button {
float: right;
.ant-btn {
margin-left: 15px;
}
}
}
</
style
>
<
style
>
.area-select
{
width
:
100%
!important
;
}
</
style
>
src/views/settlement/reconciliation/reconciliationList.vue
浏览文件 @
88901a12
...
...
@@ -4,23 +4,27 @@
<div
class=
"table-page-search-wrapper"
>
<a-form
layout=
"inline"
@
keyup
.
enter
.
native=
"searchQuery"
>
<a-row
:gutter=
"24"
>
<a-col
:md=
"5"
:sm=
"8"
style=
"display: none;"
>
<a-form-item
label=
""
>
<j-input
placeholder=
""
v-model=
"queryParam.platformType"
></j-input>
</a-form-item>
</a-col>
<a-col
:md=
"5"
:sm=
"8"
>
<a-form-item
label=
"订单编号"
>
<j-input
placeholder=
"请输入订单编号"
v-model=
"queryParam.
propertyName
"
></j-input>
<j-input
placeholder=
"请输入订单编号"
v-model=
"queryParam.
orderNum
"
></j-input>
</a-form-item>
</a-col>
<a-col
:md=
"5"
:sm=
"8"
>
<a-form-item
label=
"状态"
>
<a-select
style=
"width: 100%"
v-model=
"queryParam.
chargeTypeId
"
placeholder=
"请选择状态"
>
<a-select-option
v-for=
"item in chargeList"
:key=
"item.
id
"
:value=
"item.
id"
>
{{
item
.
typeN
ame
}}
</a-select-option>
<a-select
style=
"width: 100%"
v-model=
"queryParam.
reconciliationStatus
"
placeholder=
"请选择状态"
>
<a-select-option
v-for=
"item in chargeList"
:key=
"item.
type
"
:value=
"item.
type"
>
{{
item
.
n
ame
}}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col
:md=
"7"
:sm=
"10"
>
<a-form-item
label=
"订单时间"
>
订单时间:
<a-range-picker
@
change=
"onChangeData"
/>
</a-form-item>
</a-col>
<span
style=
"float: left;overflow: hidden;"
class=
"table-page-search-submitButtons"
>
<a-col
:md=
"5"
:sm=
"24"
>
...
...
@@ -31,19 +35,25 @@
</a-row>
</a-form>
</div>
<!-- 操作按钮区域 -->
<div
class=
"table-operator"
>
<a-button
@
click=
"toReconciliation(1,'')"
type=
"primary"
>
批量对账
</a-button>
</div>
<!-- table区域-begin -->
<div>
<p>
(以下账单,展示
{{
days
}}
天前的账单金额)
</p>
<a-table
ref=
"table"
size=
"middle"
:scroll=
"
{x:true}" bordered rowKey="id" :columns="columns"
:dataSource="dataSource" :pagination="ipagination" :loading="loading" class="j-table-force-nowrap"
@change="handleTableChange"
:rowSelection="{selectedRowKeys: selectedRowKeys,onSelect:onSelect,onChange: onSelectChange}">
@change="handleTableChange">
<span
slot=
"orderSource"
slot-scope=
"text, record"
>
<template
v-if=
"record.orderSource === 'miniapp'"
>
小程序
</
template
>
</span>
<span
slot=
"reconciliationStatus"
slot-scope=
"text, record"
>
<a-tag
color=
"orange"
v-if=
"record.reconciliationStatus === 1"
>
未对账
</a-tag>
<a-tag
color=
"blue"
v-else-if=
"record.reconciliationStatus === 2"
>
对账待审核
</a-tag>
<a-tag
color=
"green"
v-else-if=
"record.reconciliationStatus === 3"
>
已对账
</a-tag>
<a-tag
color=
"red"
v-else-if=
"record.reconciliationStatus === 4"
>
对账驳回
</a-tag>
</span>
<span
slot=
"action"
slot-scope=
"text, record"
>
<a
type=
"primary"
@
click=
"toReconciliation(2,record)"
>
申请对账
</a>
<a
type=
"primary"
@
click=
"toDetails(record.id)"
>
详情
</a>
<a
type=
"primary"
@
click=
"toReconciliation(record)"
v-if=
"record.reconciliationStatus === 1&&record.isShow=='1'"
style=
"margin-left: 15px;"
>
申请对账
</a>
</span>
</a-table>
...
...
@@ -54,107 +64,93 @@
<a-form>
<a-row>
<a-col
:span=
"24"
>
<a-form-model-item
label=
"对账总金额"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
prop=
"propertyName"
style=
"width: 100%;"
>
<a-input
v-model=
"model.propertyName"
placeholder=
"对账总金额"
></a-input>
</a-form-model-item>
</a-col>
<a-col
:span=
"24"
>
<a-form-model-item
label=
"对账日期"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
prop=
"propertyName"
style=
"width: 100%;"
>
<a-input
v-model=
"model.propertyName"
placeholder=
"对账日期"
></a-input>
<a-form-model-item
label=
"对账总金额"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
style=
"width: 100%;"
>
<a-input
v-model=
"info.amount"
placeholder=
"对账总金额"
disabled
></a-input>
</a-form-model-item>
</a-col>
<a-col
:span=
"24"
>
<a-form-model-item
label=
"对账明细"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
prop=
"propertyName"
style=
"width: 100%;"
>
<a
@
click=
"checkDetails()"
>
查看明细
</a>
<a-form-model-item
label=
"对账日期"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
style=
"width: 100%;"
>
<a-input
v-model=
"info.data"
placeholder=
"对账日期"
disabled
></a-input>
</a-form-model-item>
</a-col>
<a-col
:span=
"24"
>
<a-form-model-item
label=
"备注"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
prop=
"propertyName"
style=
"width: 100%;"
>
<a-textarea
v-model=
"model.propertyName"
:auto-size=
"
{ minRows: 4, maxRows: 6 }" />
<a-form-model-item
label=
"备注"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
style=
"width: 100%;"
>
<a-textarea
v-model=
"model.remarks"
:auto-size=
"{ minRows: 4, maxRows: 6 }"
/>
</a-form-model-item>
</a-col>
</a-row>
</a-form>
</a-modal>
<a-modal
centered
title=
"对账明细"
:visible=
"visibleReconciliationDetail"
:confirm-loading=
"confirmLoading"
:footer=
"null"
width=
"60%"
@
cancel=
"handleCancelDetail"
>
<a-table
ref=
"table"
size=
"middle"
:scroll=
"
{x:true}" bordered rowKey="id" :columns="columns1"
:dataSource="selectedList" :pagination="false" :loading="loading" class="j-table-force-nowrap">
</a-table>
</a-modal>
</a-card>
</template>
<
script
>
//import { getChargeListApi } from '@/api/api
'
import
{
httpAction
}
from
'@/api/manage
'
import
{
JeecgListMixin
}
from
'@/mixins/JeecgListMixin'
const
columns
=
[
{
title
:
'订单编号'
,
dataIndex
:
'
id
'
,
key
:
'
id
'
,
dataIndex
:
'
orderNum
'
,
key
:
'
orderNum
'
,
align
:
'center'
,
},
{
title
:
'提交时间'
,
dataIndex
:
'reconciliationBeginDate'
,
key
:
'reconciliationBeginDate'
,
dataIndex
:
'createTime'
,
key
:
'createTime'
,
align
:
'center'
,
},
{
title
:
'买家名称'
,
dataIndex
:
'buyerName'
,
key
:
'buyerName'
,
align
:
'center'
,
},
{
title
:
'
用户账号
'
,
dataIndex
:
'
creditCode
'
,
key
:
'
creditCode
'
,
title
:
'
分利金额
'
,
dataIndex
:
'
shareMoney
'
,
key
:
'
shareMoney
'
,
align
:
'center'
,
},
{
title
:
'订单金额'
,
dataIndex
:
'
propertyName
'
,
key
:
'
propertyName
'
,
dataIndex
:
'
totalMoney
'
,
key
:
'
totalMoney
'
,
align
:
'center'
,
},
{
title
:
'支付方式'
,
dataIndex
:
'
reconciliationEndDate
'
,
key
:
'
reconciliationEndDate
'
,
dataIndex
:
'
payWay
'
,
key
:
'
payWay
'
,
align
:
'center'
,
},
{
title
:
'订单来源'
,
dataIndex
:
'reconciliationAmount'
,
key
:
'reconciliationAmount'
,
dataIndex
:
'orderSource'
,
scopedSlots
:
{
customRender
:
'orderSource'
},
key
:
'orderSource'
,
align
:
'center'
,
},
{
title
:
'订单状态'
,
dataIndex
:
'updateTime'
,
key
:
'updateTime'
,
align
:
'center'
,
},
{
title
:
'备注'
,
dataIndex
:
'empowerCommunityNum'
,
key
:
'empowerCommunityNum'
,
dataIndex
:
'reconciliationStatus'
,
scopedSlots
:
{
customRender
:
'reconciliationStatus'
},
key
:
'reconciliationStatus'
,
align
:
'center'
,
},
{
title
:
'所属平台'
,
dataIndex
:
'
auditStatus
'
,
key
:
'
auditStatus
'
,
dataIndex
:
'
propertyName
'
,
key
:
'
propertyName
'
,
align
:
'center'
,
},
{
title
:
'所属小区'
,
dataIndex
:
'companyAuditStatus'
,
key
:
'companyAuditStatus'
,
// customRender: function (text) {
// return filterDictTextByCache('companyAuditStatus', text)
// },
dataIndex
:
'communityName'
,
key
:
'communityName'
,
align
:
'center'
,
},
{
title
:
'操作'
,
...
...
@@ -165,78 +161,17 @@ const columns = [
width
:
150
,
},
]
const
columns1
=
[
{
title
:
'订单编号'
,
dataIndex
:
'id'
,
key
:
'id'
,
align
:
'center'
,
},
{
title
:
'提交时间'
,
dataIndex
:
'reconciliationBeginDate'
,
key
:
'reconciliationBeginDate'
,
align
:
'center'
,
},
{
title
:
'用户账号'
,
dataIndex
:
'creditCode'
,
key
:
'creditCode'
,
align
:
'center'
,
},
{
title
:
'订单金额'
,
dataIndex
:
'propertyName'
,
key
:
'propertyName'
,
align
:
'center'
,
},
{
title
:
'支付方式'
,
dataIndex
:
'reconciliationEndDate'
,
key
:
'reconciliationEndDate'
,
align
:
'center'
,
},
{
title
:
'订单来源'
,
dataIndex
:
'reconciliationAmount'
,
key
:
'reconciliationAmount'
,
align
:
'center'
,
},
{
title
:
'订单状态'
,
dataIndex
:
'updateTime'
,
key
:
'updateTime'
,
align
:
'center'
,
},
{
title
:
'备注'
,
dataIndex
:
'empowerCommunityNum'
,
key
:
'empowerCommunityNum'
,
align
:
'center'
,
},
{
title
:
'所属平台'
,
dataIndex
:
'auditStatus'
,
key
:
'auditStatus'
,
align
:
'center'
,
},
{
title
:
'所属小区'
,
dataIndex
:
'companyAuditStatus'
,
key
:
'companyAuditStatus'
,
// customRender: function (text) {
// return filterDictTextByCache('companyAuditStatus', text)
// },
}
]
export
default
{
components
:
{
},
components
:
{},
name
:
'ReconciliationList'
,
mixins
:
[
JeecgListMixin
],
data
()
{
return
{
queryParam
:{
platformType
:
'shop'
},
info
:
{},
model
:
{},
labelCol
:
{
xs
:
{
span
:
24
},
...
...
@@ -246,78 +181,30 @@ export default {
xs
:
{
span
:
24
},
sm
:
{
span
:
16
},
},
chargeList
:
[],
chargeList
:
[
{
type
:
1
,
name
:
'未对账'
},
{
type
:
2
,
name
:
'对账待审核'
},
{
type
:
3
,
name
:
'已对账'
},
{
type
:
4
,
name
:
'对账驳回'
},
],
columns
:
columns
,
columns1
:
columns1
,
loading
:
false
,
url
:
{
list
:
'/property-central/property/communityReconciliation/list'
,
list
:
'/property-central/partners/shareBenefit/list'
,
reconciliation
:
'/property-central/partners/shareBenefit/reconciliation'
,
show
:
'/property-central/sharerule/settlementSet/queryById?id=1'
,
},
dataSource
:
[
{
id
:
'JD2394231'
,
creditCode
:
'18000000000'
,
propertyName
:
20000
,
reconciliationBeginDate
:
'2023-01-01'
,
reconciliationEndDate
:
'微信'
,
reconciliationAmount
:
'小程序'
,
updateTime
:
'未对账'
,
empowerCommunityNum
:
'备注'
,
auditStatus
:
'XXX物业集团'
,
companyAuditStatus
:
'花园小区'
,
},
{
id
:
'JD2394232'
,
creditCode
:
'18000000000'
,
propertyName
:
20000
,
reconciliationBeginDate
:
'2023-01-01'
,
reconciliationEndDate
:
'微信'
,
reconciliationAmount
:
'小程序'
,
updateTime
:
'未对账'
,
empowerCommunityNum
:
'备注'
,
auditStatus
:
'XXX物业集团'
,
companyAuditStatus
:
'花园小区'
,
},
{
id
:
'JD2394233'
,
creditCode
:
'18000000000'
,
propertyName
:
20000
,
reconciliationBeginDate
:
'2023-01-01'
,
reconciliationEndDate
:
'微信'
,
reconciliationAmount
:
'小程序'
,
updateTime
:
'未对账'
,
empowerCommunityNum
:
'备注'
,
auditStatus
:
'XXX物业集团'
,
companyAuditStatus
:
'花园小区'
,
},
{
id
:
'JD2394234'
,
creditCode
:
'18000000000'
,
propertyName
:
20000
,
reconciliationBeginDate
:
'2023-01-01'
,
reconciliationEndDate
:
'微信'
,
reconciliationAmount
:
'小程序'
,
updateTime
:
'未对账'
,
empowerCommunityNum
:
'备注'
,
auditStatus
:
'XXX物业集团'
,
companyAuditStatus
:
'花园小区'
,
},
],
days
:
''
,
dataSource
:
[],
visibleReconciliation
:
false
,
confirmLoading
:
false
,
selectedList
:
[],
selectedRowKeys
:
[],
visibleReconciliationDetail
:
false
}
},
created
()
{
//this.getChargeList()
//let data = new Date().toLocaleString()
this
.
onIsshow
()
},
methods
:
{
// async getChargeList() {
// let { result } = await getChargeListApi()
// this.chargeList = result
// },
onChangeData
(
date
,
dateString
)
{
if
(
dateString
.
length
>
0
)
{
this
.
queryParam
.
createTime_begin
=
dateString
[
0
]
...
...
@@ -327,51 +214,55 @@ export default {
this
.
queryParam
.
createTime_end
=
''
}
},
//申请对账
toReconciliation
(
type
,
record
)
{
this
.
selectedList
=
[];
if
(
type
==
1
)
{
if
(
this
.
selectionRows
.
length
>
0
)
{
this
.
visibleReconciliation
=
true
this
.
selectedList
=
this
.
selectionRows
console
.
log
(
this
.
selectedList
)
console
.
log
(
333
)
}
else
{
this
.
$message
.
warning
(
'请选择订单'
)
onIsshow
()
{
httpAction
(
this
.
url
.
show
,
{
id
:
'1'
},
'get'
)
.
then
((
res
)
=>
{
if
(
res
.
success
)
{
this
.
days
=
res
.
result
.
days
}
}
else
if
(
type
==
2
)
{
})
},
onChange
(
date
,
dateString
)
{
this
.
queryParam
.
createTime
=
dateString
},
toDetails
(
id
)
{
console
.
log
(
id
)
this
.
$router
.
push
({
path
:
'/settlement/ReconciliationDetails?type=detail&id='
+
id
,
})
},
//申请对账
toReconciliation
(
record
)
{
this
.
visibleReconciliation
=
true
this
.
selectedList
.
push
(
record
);
this
.
selectedRowKeys
=
[];
}
this
.
info
.
amount
=
record
.
totalMoney
this
.
info
.
data
=
record
.
createTime
this
.
model
.
id
=
record
.
id
},
handleOk
(
e
)
{
this
.
ModalText
=
'The modal will be closed after two seconds'
const
that
=
this
this
.
confirmLoading
=
true
setTimeout
(()
=>
{
let
method
=
'post'
httpAction
(
this
.
url
.
reconciliation
,
this
.
model
,
method
)
.
then
((
res
)
=>
{
if
(
res
.
success
)
{
that
.
$message
.
success
(
res
.
message
)
that
.
$emit
(
'ok'
)
}
else
{
that
.
$message
.
warning
(
res
.
message
)
}
that
.
searchQuery
()
this
.
visibleReconciliation
=
false
this
.
confirmLoading
=
false
},
2000
)
this
.
model
=
{}
})
.
finally
(()
=>
{
that
.
confirmLoading
=
false
})
},
handleCancel
(
e
)
{
this
.
visibleReconciliation
=
false
},
onSelect
(
record
,
selected
)
{
if
(
selected
===
true
)
{
this
.
selectedCurrently
=
record
}
},
onSelectChange
(
selectedRowKeys
,
selectedRows
)
{
this
.
selectedRowKeys
=
selectedRowKeys
this
.
selectionRows
=
selectedRows
},
checkDetails
(){
this
.
visibleReconciliationDetail
=
true
},
handleCancelDetail
(){
this
.
visibleReconciliationDetail
=
false
}
},
}
</
script
>
...
...
src/views/settlement/settlements/settlementDetails.vue
浏览文件 @
88901a12
...
...
@@ -3,132 +3,213 @@
<div
class=
"title-top"
>
<h3>
{{
title
}}
</h3>
<div
class=
"button"
>
<a-button
@
click=
"onCancel"
>
返回
</a-button>
<a-button
type=
"danger"
@
click=
"onExamine(2)"
v-if=
"pageType == '2'"
>
审核驳回
</a-button>
<a-button
type=
"primary"
@
click=
"onExamine(1)"
v-if=
"pageType == '2'"
>
审核通过
</a-button>
<a-button
type=
"primary"
@
click=
"onExamine(3)"
v-if=
"pageType == '3'"
>
确认
</a-button>
<a-button
@
click=
"toReturn"
>
返回
</a-button>
<a-button
type=
"primary"
@
click=
"toReconciliation()"
v-if=
"pageType == 'add'"
>
申请结算
</a-button>
</div>
</div>
<j-form-container
:disabled=
"true"
>
<j-form-container
:disabled=
"true"
v-if=
"pageType == 'detail'"
>
<a-form-model
ref=
"form"
:model=
"model"
slot=
"detail"
>
<a-card
title=
"基本信息"
>
<a-row>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"
订单编号"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
prop=
"propertyName
"
>
<a-input
v-model=
"
model.propertyName"
placeholder=
"订单编
号"
></a-input>
<a-form-model-item
label=
"
结算单号"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol
"
>
<a-input
v-model=
"
detailInfo.balanceNum"
placeholder=
"结算单
号"
></a-input>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"提交时间"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
prop=
"creditCode"
>
<a-input
v-model=
"
model.creditCod
e"
placeholder=
"提交时间"
></a-input>
<a-form-model-item
label=
"提交时间"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
>
<a-input
v-model=
"
detailInfo.createTim
e"
placeholder=
"提交时间"
></a-input>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"提交人"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
prop=
"registCapital"
>
<a-input
-number
v-model=
"model.registCapital"
:min=
"1"
placeholder=
"提交人"
style=
"width: 100%
"
/>
<a-form-model-item
label=
"提交人"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
>
<a-input
v-model=
"detailInfo.createBy"
placeholder=
"提交人
"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"结算
金额"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
prop=
"registCapita
l"
>
<a-input
-number
v-model=
"model.registCapital"
:min=
"1"
placeholder=
"结算金额"
style=
"width: 100%
"
/>
<a-form-model-item
label=
"结算
总金额"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCo
l"
>
<a-input
v-model=
"detailInfo.balanceMoney"
placeholder=
"结算总金额
"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"
结算方式"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
prop=
"registCapita
l"
>
<a-input
-number
v-model=
"model.registCapital"
:min=
"1"
placeholder=
"结算方式"
style=
"width: 100%
"
/>
<a-form-model-item
label=
"
账单数量"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCo
l"
>
<a-input
v-model=
"detailInfo.balanceCount"
placeholder=
"账单数量
"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"备注"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
prop=
"contactName"
>
<a-input
v-model=
"model.contactName"
placeholder=
"备注"
></a-input>
<a-form-model-item
label=
"结算方式"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
>
<a-input
v-model=
"detailInfo.balanceWay"
placeholder=
"结算方式"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"银行卡"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
>
<a-input
v-model=
"detailInfo.bankCard"
placeholder=
"银行卡"
/>
</a-form-model-item>
</a-col>
<a-col
:span=
"12"
>
<a-form-model-item
label=
"结算日期"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
>
<a-input
v-model=
"detailInfo.balanceDate"
placeholder=
"结算日期"
/>
</a-form-model-item>
</a-col>
</a-row>
</a-card>
</a-form-model>
</j-form-container>
<a-card
title=
"对账信息"
style=
"margin-top: 10px;"
>
<a-card
title=
"对账信息"
style=
"margin: 10px 0;"
>
<a-button
slot=
"extra"
type=
"primary"
@
click=
"onStatements()"
v-if=
"pageType == 'add'"
>
选择对账单
</a-button>
<div>
<a-table
ref=
"table"
size=
"middle"
:scroll=
"
{x:true}" bordered rowKey="id" :columns="columns"
:dataSource="dataSource" :pagination="ipagination" :loading="loading" class="j-table-force-nowrap"
@change="handleTableChange">
:dataSource="shareBenefitsList" :pagination="false" :loading="loading" class="j-table-force-nowrap">
<span
slot=
"orderSource"
slot-scope=
"text, record"
>
<template
v-if=
"record.orderSource === 'miniapp'"
>
小程序
</
template
>
</span>
<span
slot=
"reconciliationStatus"
slot-scope=
"text, record"
>
<a-tag
color=
"orange"
v-if=
"record.reconciliationStatus === 1"
>
未对账
</a-tag>
<a-tag
color=
"blue"
v-else-if=
"record.reconciliationStatus === 2"
>
对账待审核
</a-tag>
<a-tag
color=
"green"
v-else-if=
"record.reconciliationStatus === 3"
>
已对账
</a-tag>
<a-tag
color=
"red"
v-else-if=
"record.reconciliationStatus === 4"
>
对账驳回
</a-tag>
</span>
</a-table>
</div>
</a-card>
<a-card
title=
"操作信息"
v-if=
"recordList.length > 0"
>
<a-table
ref=
"table"
size=
"middle"
:scroll=
"{x:true}"
bordered
rowKey=
"id"
:columns=
"recordColumns"
:dataSource=
"recordList"
:pagination=
"false"
:loading=
"loading"
class=
"j-table-force-nowrap"
>
<span
slot=
"payStatus"
slot-scope=
"text, record"
>
<
template
v-if=
"record"
></
template
>
已付款
</span>
<span
slot=
"reconciliationStatus"
slot-scope=
"text, record"
>
<a-tag
v-if=
"record.reconciliationStatus === 2"
>
结算待审核
</a-tag>
<a-tag
v-else-if=
"record.reconciliationStatus === 3"
>
已结算
</a-tag>
<a-tag
v-else-if=
"record.reconciliationStatus === 4"
>
结算驳回
</a-tag>
</span>
</a-table>
</a-card>
<a-modal
centered
title=
"选择对账单"
:visible=
"visibleStatements"
@
ok=
"statementsOk"
@
cancel=
"statementsCancel"
width=
"60%"
>
<a-table
ref=
"table"
size=
"middle"
:scroll=
"{x:true}"
bordered
rowKey=
"id"
:columns=
"columns"
:dataSource=
"dataSource"
:pagination=
"ipagination"
:loading=
"loading"
class=
"j-table-force-nowrap"
@
change=
"handleTableChange"
:rowSelection=
"{selectedRowKeys: selectedRowKeys,onSelect:onSelect,onChange: onSelectChange}"
>
<span
slot=
"orderSource"
slot-scope=
"text, record"
>
<
template
v-if=
"record.orderSource === 'miniapp'"
>
小程序
</
template
>
</span>
<span
slot=
"reconciliationStatus"
slot-scope=
"text, record"
>
<a-tag
color=
"orange"
v-if=
"record.reconciliationStatus === 1"
>
未对账
</a-tag>
<a-tag
color=
"blue"
v-else-if=
"record.reconciliationStatus === 2"
>
对账待审核
</a-tag>
<a-tag
color=
"green"
v-else-if=
"record.reconciliationStatus === 3"
>
已对账
</a-tag>
<a-tag
color=
"red"
v-else-if=
"record.reconciliationStatus === 4"
>
对账驳回
</a-tag>
</span>
</a-table>
</a-modal>
<a-modal
centered
title=
"申请结算"
:visible=
"visibleReconciliation"
:confirm-loading=
"confirmLoading"
@
ok=
"handleOk"
@
cancel=
"handleCancel"
>
<a-form>
<a-row>
<a-col
:span=
"24"
>
<a-form-model-item
label=
"结算总金额"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
style=
"width: 100%;margin-bottom: 10px;"
>
<a-input
v-model=
"info.balanceMoney"
placeholder=
"结算总金额"
disabled
></a-input>
</a-form-model-item>
</a-col>
<a-col
:span=
"24"
>
<a-form-model-item
label=
"结算方式"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
prop=
"balanceWay"
style=
"width: 100%;margin-bottom: 10px;"
>
<a-input
v-model=
"model.balanceWay"
placeholder=
"结算方式"
disabled
></a-input>
</a-form-model-item>
</a-col>
<a-col
:span=
"24"
>
<a-form-model-item
label=
"选择银行卡"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
prop=
"bankCard"
style=
"width: 100%;margin-bottom: 10px;"
>
<a-input
v-model=
"model.bankCard"
placeholder=
"银行卡"
disabled
></a-input>
</a-form-model-item>
</a-col>
<a-col
:span=
"24"
>
<a-form-model-item
label=
"结算日期"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
prop=
"balanceDate"
style=
"width: 100%;margin-bottom: 10px;"
>
<a-date-picker
placeholder=
"选择日期"
format=
"YYYY-MM-DD HH:mm:ss"
:show-time=
"{ format: 'HH:mm:ss' }"
@
change=
"onChangeTime"
v-model=
"model.balanceDate"
></a-date-picker>
</a-form-model-item>
</a-col>
<a-col
:span=
"24"
>
<a-form-model-item
label=
"备注"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
style=
"width: 100%;"
>
<a-textarea
v-model=
"model.remarks"
:auto-size=
"{ minRows: 4, maxRows: 6 }"
/>
</a-form-model-item>
</a-col>
</a-row>
</a-form>
</a-modal>
</a-spin>
</template>
<
script
>
const
mapZoom
=
[
5
,
8
,
10
,
12
]
let
timer
=
null
import
{
getPropertyChargruleListApi
,
getPropertyDetailApi
,
auditPropertyApi
}
from
'@/api/api'
import
{
httpAction
,
getAction
}
from
'@/api/manage'
import
{
shareBalanceByDepId
}
from
'@/api/api'
import
{
httpAction
}
from
'@/api/manage'
import
{
JeecgListMixin
}
from
'@/mixins/JeecgListMixin'
const
columns
=
[
{
title
:
'订单编号'
,
dataIndex
:
'
id
'
,
key
:
'
id
'
,
dataIndex
:
'
orderNum
'
,
key
:
'
orderNum
'
,
align
:
'center'
,
},
{
title
:
'提交时间'
,
dataIndex
:
'
reconciliationBeginDat
e'
,
key
:
'
reconciliationBeginDat
e'
,
dataIndex
:
'
createTim
e'
,
key
:
'
createTim
e'
,
align
:
'center'
,
},
{
title
:
'
用户账号
'
,
dataIndex
:
'
creditCod
e'
,
key
:
'
creditCod
e'
,
title
:
'
买家名称
'
,
dataIndex
:
'
buyerNam
e'
,
key
:
'
buyerNam
e'
,
align
:
'center'
,
},
{
title
:
'分利金额'
,
dataIndex
:
'
propertyName
'
,
key
:
'
propertyName
'
,
dataIndex
:
'
shareMoney
'
,
key
:
'
shareMoney
'
,
align
:
'center'
,
},
{
title
:
'
支付方式
'
,
dataIndex
:
'
reconciliationEndDate
'
,
key
:
'
reconciliationEndDate
'
,
title
:
'
订单金额
'
,
dataIndex
:
'
totalMoney
'
,
key
:
'
totalMoney
'
,
align
:
'center'
,
},
// {
// title: '支付方式',
// dataIndex: 'payWay',
// key: 'payWay',
// align: 'center',
// },
{
title
:
'订单来源'
,
dataIndex
:
'reconciliationAmount'
,
key
:
'reconciliationAmount'
,
dataIndex
:
'orderSource'
,
scopedSlots
:
{
customRender
:
'orderSource'
},
key
:
'orderSource'
,
align
:
'center'
,
},
{
title
:
'订单状态'
,
dataIndex
:
'updateTime'
,
key
:
'updateTime'
,
align
:
'center'
,
},
{
title
:
'备注'
,
dataIndex
:
'empowerCommunityNum'
,
key
:
'empowerCommunityNum'
,
dataIndex
:
'reconciliationStatus'
,
scopedSlots
:
{
customRender
:
'reconciliationStatus'
},
key
:
'reconciliationStatus'
,
align
:
'center'
,
},
{
title
:
'所属平台'
,
dataIndex
:
'
auditStatus
'
,
key
:
'
auditStatus
'
,
dataIndex
:
'
propertyName
'
,
key
:
'
propertyName
'
,
align
:
'center'
,
},
{
title
:
'所属小区'
,
dataIndex
:
'companyAuditStatus'
,
key
:
'companyAuditStatus'
,
// customRender: function (text) {
// return filterDictTextByCache('companyAuditStatus', text)
// },
dataIndex
:
'communityName'
,
key
:
'communityName'
,
align
:
'center'
,
},
]
export
default
{
...
...
@@ -140,14 +221,9 @@ export default {
title
:
'详情'
,
pageType
:
''
,
pcaa
:
this
.
$Jpcaa
,
model
:
{
propertyName
:
'234234234'
,
creditCode
:
'2023-03-22'
,
legalName
:
'2023-06-22'
,
registCapital
:
'ADMIN'
,
contactName
:
'2023-06-23'
,
image
:
''
,
},
model
:
{},
info
:
{},
detailInfo
:
{},
labelCol
:
{
xs
:
{
span
:
24
},
sm
:
{
span
:
6
},
...
...
@@ -156,264 +232,154 @@ export default {
xs
:
{
span
:
24
},
sm
:
{
span
:
16
},
},
visibleStatements
:
false
,
confirmLoading
:
false
,
shareBenefitsList
:
[],
selectionRows
:
[],
selectedRowKeys
:
[],
visibleReconciliation
:
false
,
url
:
{
queryById
:
'/property-central/property/propertySettled/queryById'
,
list
:
'/property-central/property/communityReconciliation/communityAccountPage'
,
queryById
:
'/property-central/partners/shareBalance/queryById'
,
add
:
'/property-central/partners/shareBalance/add'
,
list
:
'/property-central/partners/shareBenefit/listBalance?platformType=shop'
,
},
costList
:
[],
mapRef
:
null
,
columns
:
columns
,
loading
:
false
,
dataSource
:
[
dataStatements
:
[],
recordList
:[],
recordColumns
:
[
{
id
:
'JD2394231'
,
creditCode
:
'18000000000'
,
propertyName
:
20000
,
reconciliationBeginDate
:
'2023-01-01'
,
reconciliationEndDate
:
'微信'
,
reconciliationAmount
:
'小程序'
,
updateTime
:
'未对账'
,
empowerCommunityNum
:
'备注'
,
auditStatus
:
'XXX物业集团'
,
companyAuditStatus
:
'花园小区'
,
title
:
'操作人'
,
dataIndex
:
'createBy'
,
key
:
'createBy'
,
align
:
'center'
,
},
{
id
:
'JD2394232'
,
creditCode
:
'18000000000'
,
propertyName
:
20000
,
reconciliationBeginDate
:
'2023-01-01'
,
reconciliationEndDate
:
'微信'
,
reconciliationAmount
:
'小程序'
,
updateTime
:
'未对账'
,
empowerCommunityNum
:
'备注'
,
auditStatus
:
'XXX物业集团'
,
companyAuditStatus
:
'花园小区'
,
title
:
'操作时间'
,
dataIndex
:
'createTime'
,
key
:
'createTime'
,
align
:
'center'
,
},
{
id
:
'JD2394233'
,
creditCode
:
'18000000000'
,
propertyName
:
20000
,
reconciliationBeginDate
:
'2023-01-01'
,
reconciliationEndDate
:
'微信'
,
reconciliationAmount
:
'小程序'
,
updateTime
:
'未对账'
,
empowerCommunityNum
:
'备注'
,
auditStatus
:
'XXX物业集团'
,
companyAuditStatus
:
'花园小区'
,
title
:
'订单状态'
,
dataIndex
:
'reconciliationStatus'
,
scopedSlots
:
{
customRender
:
'reconciliationStatus'
},
key
:
'reconciliationStatus'
,
align
:
'center'
,
},
{
title
:
'付款状态'
,
dataIndex
:
'payStatus'
,
scopedSlots
:
{
customRender
:
'payStatus'
},
key
:
'payStatus'
,
align
:
'center'
,
},
{
id
:
'JD2394234'
,
creditCode
:
'18000000000'
,
propertyName
:
20000
,
reconciliationBeginDate
:
'2023-01-01'
,
reconciliationEndDate
:
'微信'
,
reconciliationAmount
:
'小程序'
,
updateTime
:
'未对账'
,
empowerCommunityNum
:
'备注'
,
auditStatus
:
'XXX物业集团'
,
companyAuditStatus
:
'花园小区'
,
title
:
'备注'
,
dataIndex
:
'remarks'
,
key
:
'remarks'
,
align
:
'center'
,
},
],
}
},
created
()
{
this
.
pageType
=
this
.
$route
.
query
.
type
if
(
this
.
$route
.
query
.
type
==
'add'
)
{
this
.
title
=
'新增'
}
else
if
(
this
.
$route
.
query
.
type
==
'detail'
)
{
this
.
title
=
'详情'
}
if
(
this
.
$route
.
query
.
id
)
{
this
.
getPageDetail
()
}
},
methods
:
{
async
onLoadCostList
()
{
let
data
=
await
getPropertyChargruleListApi
()
this
.
costList
=
data
.
result
initPageParams
(
params
)
{
params
[
'platformType'
]
=
'shop'
},
async
getPageDetail
()
{
let
{
result
}
=
await
getPropertyDetailApi
({
id
:
this
.
$route
.
query
.
id
})
this
.
edit
(
result
)
if
(
result
.
provinceName
)
{
this
.
getLongitude
(
result
.
provinceName
,
result
.
provinceName
+
result
.
cityName
+
result
.
countyName
+
result
.
addressInfo
,
mapZoom
[
3
]
)
}
let
{
result
}
=
await
shareBalanceByDepId
({
id
:
this
.
$route
.
query
.
id
})
this
.
recordList
=
result
.
list
this
.
detailInfo
=
result
.
shareBalance
this
.
shareBenefitsList
=
result
.
shareBenefitsList
},
onCancel
()
{
toReturn
()
{
this
.
closeCurrent
()
this
.
$router
.
go
(
-
1
)
},
contactPhoneChange
(
e
)
{
if
(
!
this
.
model
.
adminLoginName
)
{
this
.
model
.
adminLoginName
=
e
.
target
.
value
}
},
edit
(
record
)
{
this
.
model
=
Object
.
assign
({},
record
)
this
.
model
.
registAdress
=
[
record
.
provinceCode
,
record
.
cityCode
,
record
.
countyCode
]
this
.
visible
=
true
},
onExamine
(
type
)
{
this
.
closeCurrent
()
// const that = this
// if (type == 1) {
// return auditPropertyApi({
// id: this.$route.query.id,
// auditStatus: 'auditPass',
// }).then((res) => {
// that.$message.success('审核通过成功')
// that.$emit('ok')
// this.closeCurrent()
// })
// } else if (type == 2) {
// return auditPropertyApi({
// id: this.$route.query.id,
// auditStatus: 'refuse',
// }).then((res) => {
// that.$message.success('审核驳回成功')
// this.closeCurrent()
// })
// }
},
addressChange
(
val
)
{
const
province
=
Object
.
keys
(
val
[
0
])[
0
]
const
city
=
Object
.
keys
(
val
[
1
])[
0
]
const
county
=
Object
.
keys
(
val
[
2
])[
0
]
this
.
model
.
provinceName
=
val
[
0
][
province
]
this
.
model
.
provinceCode
=
province
this
.
model
.
cityName
=
val
[
1
][
city
]
this
.
model
.
cityCode
=
city
this
.
model
.
countyName
=
val
[
2
][
county
]
this
.
model
.
countyCode
=
county
if
(
this
.
model
.
addressInfo
)
{
this
.
getLongitude
(
this
.
model
.
provinceName
,
this
.
model
.
provinceName
+
this
.
model
.
cityName
+
this
.
model
.
countyName
+
this
.
model
.
addressInfo
,
mapZoom
[
3
]
)
}
//选择对账单
onStatements
()
{
this
.
visibleStatements
=
true
},
addressBlur
(
val
)
{
if
(
this
.
model
.
provinceName
)
{
this
.
getLongitude
(
this
.
model
.
provinceName
,
this
.
model
.
provinceName
+
this
.
model
.
cityName
+
this
.
model
.
countyName
+
val
.
target
.
value
,
mapZoom
[
3
]
)
onSelect
(
record
,
selected
)
{
if
(
selected
===
true
)
{
this
.
selectedCurrently
=
record
}
},
getAddress
(
e
)
{
let
_this
=
this
// 创建地理编码实例
var
myGeo
=
new
BMapGL
.
Geocoder
()
// 根据坐标得到地址描述
myGeo
.
getLocation
(
new
BMapGL
.
Point
(
e
.
latlng
.
lng
,
e
.
latlng
.
lat
),
function
(
result
)
{
if
(
result
)
{
_this
.
mapRef
.
clearOverlays
()
_this
.
model
.
registAdress
=
[
result
.
addressComponents
.
province
,
result
.
addressComponents
.
city
,
result
.
addressComponents
.
district
,
]
_this
.
model
.
addressInfo
=
result
.
addressComponents
.
street
+
result
.
addressComponents
.
streetNumber
_this
.
model
.
longitude
=
result
.
point
.
lng
_this
.
model
.
latitude
=
result
.
point
.
lat
_this
.
positionMap
(
e
.
latlng
.
lng
,
e
.
latlng
.
lat
,
mapZoom
[
3
],
result
.
address
)
console
.
log
(
result
)
onSelectChange
(
selectedRowKeys
,
selectedRows
)
{
this
.
selectedRowKeys
=
selectedRowKeys
this
.
selectionRows
=
selectedRows
},
statementsOk
()
{
this
.
shareBenefitsList
=
this
.
selectionRows
this
.
visibleStatements
=
false
this
.
confirmLoading
=
false
},
statementsCancel
(
e
)
{
this
.
visibleStatements
=
false
},
//申请对账
toReconciliation
(
record
)
{
if
(
this
.
selectionRows
.
length
>
0
)
{
this
.
visibleReconciliation
=
true
let
list
=
this
.
shareBenefitsList
let
sum
=
0
for
(
var
i
=
0
;
i
<
list
.
length
;
i
++
)
{
sum
+=
list
[
i
].
shareMoney
}
})
},
positionMap
(
mapCenterLng
,
mapCenterLat
,
mapzoom
,
address
)
{
var
point
=
new
BMapGL
.
Point
(
mapCenterLng
,
mapCenterLat
)
// 创建点坐标
this
.
mapRef
.
centerAndZoom
(
point
,
mapzoom
)
var
marker
=
new
BMapGL
.
Marker
(
point
,
{
title
:
address
})
// 创建标注
this
.
mapRef
.
addOverlay
(
marker
)
// 将标注添加到地图中
let
_this
=
this
// marker.addEventListener("click", function(){
var
label
=
new
BMapGL
.
Label
(
address
,
{
// 创建文本标注
position
:
point
,
// 设置标注的地理位置
offset
:
new
BMapGL
.
Size
(
0
,
-
55
),
// 设置标注的偏移量
})
_this
.
mapRef
.
addOverlay
(
label
)
// 将标注添加到地图中
label
.
setStyle
({
// 设置label的样式
color
:
'#333'
,
fontSize
:
'14px'
,
padding
:
'4px 10px'
,
border
:
'1px solid #1E90FF'
,
borderRadius
:
'4px'
,
transform
:
'translateX(-40%)'
,
})
// });
},
getLongitude
(
city
,
address
,
zoom
)
{
let
_this
=
this
var
myGeo
=
new
BMapGL
.
Geocoder
()
myGeo
.
getPoint
(
address
,
function
(
point
)
{
if
(
point
)
{
_this
.
mapRef
.
clearOverlays
()
_this
.
model
.
longitude
=
point
.
lng
_this
.
model
.
latitude
=
point
.
lat
_this
.
positionMap
(
point
.
lng
,
point
.
lat
,
zoom
,
address
)
this
.
info
.
balanceMoney
=
sum
this
.
model
.
balanceWay
=
'转账'
this
.
model
.
bankCard
=
'123456789'
}
else
{
console
.
log
(
'您选择的地址没有解析到结果!
'
)
this
.
$message
.
warning
(
'选择对账单
'
)
}
},
city
)
onChangeTime
(
date
,
dateString
)
{
this
.
model
.
balanceDate
=
dateString
},
submitForm
(
)
{
handleOk
(
e
)
{
const
that
=
this
// 触发表单验证
this
.
$refs
.
form
.
validate
((
valid
)
=>
{
if
(
valid
)
{
that
.
confirmLoading
=
true
let
httpurl
=
''
let
method
=
''
if
(
!
this
.
model
.
id
)
{
httpurl
+=
this
.
url
.
add
method
=
'post'
}
else
{
httpurl
+=
this
.
url
.
edit
method
=
'put'
this
.
confirmLoading
=
true
let
method
=
'post'
if
(
!
this
.
model
.
balanceDate
)
{
this
.
$message
.
warning
(
'请选择结算日期'
)
this
.
confirmLoading
=
false
return
false
}
//this.model.registAdress = undefined
httpAction
(
httpurl
,
this
.
model
,
method
)
this
.
model
.
shareBenefitIds
=
this
.
selectedRowKeys
.
toString
()
httpAction
(
this
.
url
.
add
,
this
.
model
,
method
)
.
then
((
res
)
=>
{
if
(
res
.
success
)
{
that
.
$message
.
success
(
res
.
message
)
that
.
$emit
(
'ok'
)
this
.
closeCurrent
()
this
.
toReturn
()
}
else
{
that
.
$message
.
warning
(
res
.
message
)
}
this
.
visibleReconciliation
=
false
this
.
confirmLoading
=
false
this
.
model
=
{}
})
.
finally
(()
=>
{
that
.
confirmLoading
=
false
})
}
})
},
loadData
(
)
{
console
.
log
(
'不请求'
)
handleCancel
(
e
)
{
this
.
visibleReconciliation
=
false
},
},
mounted
()
{
//备份model原始值
//this.modelDefault = JSON.parse(JSON.stringify(this.model))
// this.onLoadCostList()
this
.
pageType
=
this
.
$route
.
query
.
type
if
(
this
.
$route
.
query
.
type
==
'1'
)
{
this
.
title
=
'详情'
}
else
if
(
this
.
$route
.
query
.
type
==
'2'
)
{
this
.
title
=
'审核'
}
else
if
(
this
.
$route
.
query
.
type
==
'3'
)
{
this
.
title
=
'拨款'
}
console
.
log
(
this
.
title
)
console
.
log
(
this
.
pageType
)
// if (this.$route.query.id) {
// this.getPageDetail()
// }
},
mounted
()
{},
}
</
script
>
<
style
lang=
"less"
scoped
>
...
...
src/views/settlement/settlements/settlementList.vue
浏览文件 @
88901a12
...
...
@@ -6,18 +6,20 @@
<a-row
:gutter=
"24"
>
<a-col
:md=
"5"
:sm=
"8"
>
<a-form-item
label=
"订单编号"
>
<j-input
placeholder=
"请输入订单编号"
v-model=
"queryParam.
propertyName
"
></j-input>
<j-input
placeholder=
"请输入订单编号"
v-model=
"queryParam.
balanceNum
"
></j-input>
</a-form-item>
</a-col>
<a-col
:md=
"5"
:sm=
"8"
>
<a-form-item
label=
"状态"
>
<j-input
placeholder=
"请选择状态"
v-model=
"queryParam.propertyName"
></j-input>
<a-select
style=
"width: 100%"
v-model=
"queryParam.balanceStatus"
placeholder=
"请选择状态"
>
<a-select-option
v-for=
"item in chargeList"
:key=
"item.type"
:value=
"item.type"
>
{{
item
.
name
}}
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col
:md=
"7"
:sm=
"10"
>
<a-form-item
label=
"订单时间"
>
订单时间:
<a-range-picker
@
change=
"onChangeData"
/>
</a-form-item>
</a-col>
<span
style=
"float: left;overflow: hidden;"
class=
"table-page-search-submitButtons"
>
<a-col
:md=
"5"
:sm=
"24"
>
...
...
@@ -28,61 +30,26 @@
</a-row>
</a-form>
</div>
<!-- 操作按钮区域 -->
<div
class=
"table-operator"
>
<a-button
@
click=
"propertyDetails(1)"
type=
"primary"
>
申请结算
</a-button>
</div>
<!-- table区域-begin -->
<div>
<a-table
ref=
"table"
size=
"middle"
:scroll=
"
{x:true}" bordered rowKey="id" :columns="columns"
:dataSource="dataSource" :pagination="ipagination" :loading="loading" class="j-table-force-nowrap"
@change="handleTableChange">
<span
slot=
"balanceStatus"
slot-scope=
"text, record"
>
<a-tag
color=
"blue"
v-if=
"record.balanceStatus === 2"
>
结算待审核
</a-tag>
<a-tag
color=
"green"
v-else-if=
"record.balanceStatus === 3"
>
已结算
</a-tag>
<a-tag
color=
"red"
v-else-if=
"record.balanceStatus === 4"
>
结算驳回
</a-tag>
</span>
<span
slot=
"action"
slot-scope=
"text, record"
>
<a
type=
"primary"
@
click=
"propertyDetails()"
>
详情
</a>
<a
type=
"primary"
@
click=
"toReconciliation(record)"
style=
"margin-left: 10px;"
>
申请结算
</a>
<a
type=
"primary"
@
click=
"propertyDetails(2,record.id)"
>
详情
</a>
</span>
</a-table>
</div>
<!-- table区域-end -->
<a-modal
centered
title=
"申请结算"
:visible=
"visibleReconciliation"
:confirm-loading=
"confirmLoading"
@
ok=
"handleOk"
@
cancel=
"handleCancel"
>
<a-form>
<a-row>
<a-col
:span=
"24"
>
<a-form-model-item
label=
"结算总金额"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
prop=
"propertyName"
style=
"width: 100%;margin-bottom: 10px;"
>
<a-input
v-model=
"model.propertyName"
placeholder=
"结算总金额"
></a-input>
</a-form-model-item>
</a-col>
<a-col
:span=
"24"
>
<a-form-model-item
label=
"结算日期"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
prop=
"propertyName"
style=
"width: 100%;margin-bottom: 10px;"
>
<a-input
v-model=
"model.propertyName"
placeholder=
"结算日期"
></a-input>
</a-form-model-item>
</a-col>
<a-col
:span=
"24"
>
<a-form-model-item
label=
"结算方式"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
prop=
"propertyName"
style=
"width: 100%;margin-bottom: 10px;"
>
<a-input
v-model=
"model.propertyName"
placeholder=
"结算方式"
></a-input>
</a-form-model-item>
</a-col>
<a-col
:span=
"24"
>
<a-form-model-item
label=
"选择银行卡"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
prop=
"propertyName"
style=
"width: 100%;margin-bottom: 10px;"
>
<a-input
v-model=
"model.propertyName"
placeholder=
"选择银行卡"
></a-input>
</a-form-model-item>
</a-col>
<a-col
:span=
"24"
>
<a-form-model-item
label=
"结算明细"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
prop=
"propertyName"
style=
"width: 100%;margin-bottom: 10px;"
>
<a>
查看明细
</a>
</a-form-model-item>
</a-col>
<a-col
:span=
"24"
>
<a-form-model-item
label=
"备注"
:labelCol=
"labelCol"
:wrapperCol=
"wrapperCol"
prop=
"propertyName"
style=
"width: 100%;"
>
<a-textarea
v-model=
"model.propertyName"
:auto-size=
"
{ minRows: 4, maxRows: 6 }" />
</a-form-model-item>
</a-col>
</a-row>
</a-form>
</a-modal>
</a-card>
</
template
>
...
...
@@ -93,51 +60,45 @@ import { JeecgListMixin } from '@/mixins/JeecgListMixin'
const
columns
=
[
{
title
:
'结算单号'
,
dataIndex
:
'
id
'
,
key
:
'
id
'
,
dataIndex
:
'
balanceNum
'
,
key
:
'
balanceNum
'
,
align
:
'center'
,
},
{
title
:
'提交时间'
,
dataIndex
:
'
reconciliationBeginDat
e'
,
key
:
'
reconciliationBeginDat
e'
,
dataIndex
:
'
createTim
e'
,
key
:
'
createTim
e'
,
align
:
'center'
,
},
{
title
:
'提交人'
,
dataIndex
:
'cre
ditCode
'
,
key
:
'cre
ditCode
'
,
dataIndex
:
'cre
ateBy
'
,
key
:
'cre
ateBy
'
,
align
:
'center'
,
},
{
title
:
'结算总金额'
,
dataIndex
:
'
reconciliationAmount
'
,
key
:
'
reconciliationAmount
'
,
dataIndex
:
'
balanceMoney
'
,
key
:
'
balanceMoney
'
,
align
:
'center'
,
},
{
title
:
'账单数量'
,
dataIndex
:
'
reconciliationEndDate
'
,
key
:
'
reconciliationEndDate
'
,
dataIndex
:
'
balanceCount
'
,
key
:
'
balanceCount
'
,
align
:
'center'
,
},
{
title
:
'结算方式'
,
dataIndex
:
'
companyAuditStatus
'
,
key
:
'
companyAuditStatus
'
,
dataIndex
:
'
balanceWay
'
,
key
:
'
balanceWay
'
,
align
:
'center'
,
},
{
title
:
'结算状态'
,
dataIndex
:
'auditStatus'
,
key
:
'auditStatus'
,
align
:
'center'
,
},
{
title
:
'备注'
,
dataIndex
:
'empowerCommunityNum'
,
key
:
'empowerCommunityNum'
,
dataIndex
:
'balanceStatus'
,
scopedSlots
:
{
customRender
:
'balanceStatus'
},
key
:
'balanceStatus'
,
align
:
'center'
,
},
{
...
...
@@ -168,129 +129,18 @@ export default {
columns
:
columns
,
loading
:
false
,
url
:
{
list
:
'/property-central/property/communityReconciliation/list'
,
},
dataSource
:
[
{
id
:
'JD239423'
,
creditCode
:
'张三'
,
propertyName
:
'2000'
,
reconciliationBeginDate
:
'2023-01-01'
,
reconciliationEndDate
:
'5'
,
reconciliationAmount
:
'345.23'
,
updateTime
:
'2023-04-05'
,
empowerCommunityNum
:
'admin'
,
auditStatus
:
'已结算'
,
companyAuditStatus
:
'微信'
,
},
{
id
:
'JD453454'
,
creditCode
:
'张三'
,
propertyName
:
'2000'
,
reconciliationBeginDate
:
'2023-04-06'
,
reconciliationEndDate
:
'10'
,
reconciliationAmount
:
'1345.45'
,
updateTime
:
'2023-05-05'
,
empowerCommunityNum
:
'admin'
,
auditStatus
:
'已结算'
,
companyAuditStatus
:
'微信'
,
},
{
id
:
'JD567454'
,
creditCode
:
'张三'
,
propertyName
:
'2000'
,
reconciliationBeginDate
:
'2023-02-05'
,
reconciliationEndDate
:
'2'
,
reconciliationAmount
:
'34234'
,
updateTime
:
'2023-02-06'
,
empowerCommunityNum
:
'admin'
,
auditStatus
:
'未结算'
,
companyAuditStatus
:
'微信'
,
},
{
id
:
'KF343455'
,
creditCode
:
'张三'
,
propertyName
:
'2000'
,
reconciliationBeginDate
:
'2022-11-01'
,
reconciliationEndDate
:
'3'
,
reconciliationAmount
:
'34'
,
updateTime
:
'2023-06-07'
,
empowerCommunityNum
:
'admin'
,
auditStatus
:
'已结算'
,
companyAuditStatus
:
'微信'
,
},
{
id
:
'KD435345'
,
creditCode
:
'张三'
,
propertyName
:
'2000'
,
reconciliationBeginDate
:
'2022-01-21'
,
reconciliationEndDate
:
'3'
,
reconciliationAmount
:
'654'
,
updateTime
:
'2023-05-06'
,
empowerCommunityNum
:
'admin'
,
auditStatus
:
'未结算'
,
companyAuditStatus
:
'微信'
,
list
:
'/property-central/partners/shareBalance/list?platformType=shop'
,
},
{
id
:
'LG345352'
,
creditCode
:
'张三'
,
propertyName
:
'2000'
,
reconciliationBeginDate
:
'2022-01-10'
,
reconciliationEndDate
:
'20'
,
reconciliationAmount
:
'897.98'
,
updateTime
:
'2023-05-08'
,
empowerCommunityNum
:
'admin'
,
auditStatus
:
'未结算'
,
companyAuditStatus
:
'微信'
,
},
{
id
:
'MG345354'
,
creditCode
:
'张三'
,
propertyName
:
'2000'
,
reconciliationBeginDate
:
'2023-01-04'
,
reconciliationEndDate
:
'20'
,
reconciliationAmount
:
'234'
,
updateTime
:
'2023-05-05'
,
empowerCommunityNum
:
'admin'
,
auditStatus
:
'未结算'
,
companyAuditStatus
:
'微信'
,
},
{
id
:
'LB345353'
,
creditCode
:
'张三'
,
propertyName
:
'2000'
,
reconciliationBeginDate
:
'2023-02-01'
,
reconciliationEndDate
:
'2'
,
reconciliationAmount
:
'1000'
,
updateTime
:
'2023-04-04'
,
empowerCommunityNum
:
'admin'
,
auditStatus
:
'未结算'
,
companyAuditStatus
:
'微信'
,
},
{
id
:
'LC234234'
,
creditCode
:
'张三'
,
propertyName
:
'2000'
,
reconciliationBeginDate
:
'2023-01-23'
,
reconciliationEndDate
:
'5'
,
reconciliationAmount
:
'3443'
,
updateTime
:
'2023-01-02'
,
empowerCommunityNum
:
'admin'
,
auditStatus
:
'未结算'
,
companyAuditStatus
:
'转账'
,
},
],
visibleReconciliation
:
false
,
dataSource
:
[],
confirmLoading
:
false
,
chargeList
:
[
{
type
:
2
,
name
:
'结算待审核'
},
{
type
:
3
,
name
:
'已结算'
},
{
type
:
4
,
name
:
'结算驳回'
},
],
}
},
methods
:
{
propertyDetails
(
type
,
id
)
{
this
.
$router
.
push
({
path
:
'/settlement/settlementDetails?id='
+
id
+
'&type='
+
type
,
})
},
onChangeData
(
date
,
dateString
)
{
if
(
dateString
.
length
>
0
)
{
this
.
queryParam
.
createTime_begin
=
dateString
[
0
]
...
...
@@ -300,25 +150,25 @@ export default {
this
.
queryParam
.
createTime_end
=
''
}
},
//申请对账
toReconciliation
(
record
)
{
this
.
visibleReconciliation
=
true
onChange
(
date
,
dateString
)
{
this
.
queryParam
.
createTime
=
dateString
},
handleOk
(
e
)
{
this
.
ModalText
=
'The modal will be closed after two seconds'
this
.
confirmLoading
=
true
setTimeout
(()
=>
{
this
.
visibleReconciliation
=
false
this
.
confirmLoading
=
false
},
2000
)
initPageParams
(
params
)
{
params
[
'platformType'
]
=
'shop'
},
handleCancel
(
e
)
{
console
.
log
(
'Clicked cancel button'
)
this
.
visibleReconciliation
=
false
},
loadData
()
{
console
.
log
(
'不请求'
)
propertyDetails
(
type
,
id
)
{
if
(
type
==
1
)
{
this
.
$router
.
push
({
path
:
'/settlement/SettlementDetails?type=add'
,
})
}
else
if
(
type
==
2
)
{
this
.
$router
.
push
({
path
:
'/settlement/SettlementDetails?type=detail&id='
+
id
,
})
}
},
},
}
</
script
>
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论