diff --git a/src/app/routes/partner/account-management/components/withdrawals-record/withdrawals-record.component.ts b/src/app/routes/partner/account-management/components/withdrawals-record/withdrawals-record.component.ts
index 16738ce9..6b7b86f4 100644
--- a/src/app/routes/partner/account-management/components/withdrawals-record/withdrawals-record.component.ts
+++ b/src/app/routes/partner/account-management/components/withdrawals-record/withdrawals-record.component.ts
@@ -1,5 +1,5 @@
import { Component, OnInit, ViewChild } from '@angular/core';
-import { Router } from '@angular/router';
+import { ActivatedRoute, Router } from '@angular/router';
import { STComponent, STColumn, STChange, STRequestOptions, STData } from '@delon/abc/st';
import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form';
import { NzModalService } from 'ng-zorro-antd/modal';
@@ -27,7 +27,7 @@ export class PartnerAccountManagementWithdrawalsRecordComponent implements OnIni
refundStatus: any = '';
msg = '';
- constructor(public service: FreightAccountService, private nzModalService: NzModalService, private router: Router) { }
+ constructor(public service: FreightAccountService, private nzModalService: NzModalService, private router: Router, public ar: ActivatedRoute) { }
ngOnInit(): void { }
@@ -325,7 +325,7 @@ export class PartnerAccountManagementWithdrawalsRecordComponent implements OnIni
},
{
text: '详情',
- click: item => this.router.navigate(['/financial-management/withdrawals-record/detail/' + item.id])
+ click: item => this.router.navigate(['./detail/' + item.id], { relativeTo: this.ar })
}
]
}
diff --git a/src/app/routes/partner/partner-routing.module.ts b/src/app/routes/partner/partner-routing.module.ts
index 6c78c6fe..5fcfa3a2 100644
--- a/src/app/routes/partner/partner-routing.module.ts
+++ b/src/app/routes/partner/partner-routing.module.ts
@@ -29,12 +29,14 @@ import { ParterRebateManageMentRecordComponent } from './rebate-management/compo
import { PartnerAccountManagementAccountDetailComponent } from './account-management/components/account-detail/account-detail.component';
import { PartnerAccountManagementRecordedDetailComponent } from './account-management/components/recorded-detail/recorded-detail.component';
import { PartnerAccountManagementWithdrawalsRecordComponent } from './account-management/components/withdrawals-record/withdrawals-record.component';
-import { PartnerAccountManagementWithdrawalsDetailComponent } from './account-management/components/withdrawals-record/withdrawals-detail/withdrawals-detail.component';
-import { PartnerListComponent } from './partner-list/components/index/partner-list.component';
-import { PartnerDetailComponent } from './partner-list/components/partner-detail/partner-detail.component';
+import { PartnerAccountManagementWithdralDetailComponent } from './account-management/components/withdrawals-record/withdrawals-detail/withdrawals-detail.component';
+import { PartnerRecordedRecordComponent } from './recorded/components/record/record.component';
+import { PartnerRecordedDetailComponent } from './recorded/components/detail/detail.component';
import { ParterRebateManageMentSettingComponent } from './rebate-management/components/rebate-setting/rebate-setting.component';
import { AddEtpPartnerComponent } from './partner-list/components/add-etp-partner/add-etp-partner.component';
import { AddPersonalPartnerComponent } from './partner-list/components/add-personal-partner/add-personal-partner.component';
+import { PartnerDetailComponent } from './partner-list/components/partner-detail/partner-detail.component';
+import { PartnerListComponent } from './partner-list/components/index/partner-list.component';
const routes: Routes = [
{
@@ -80,7 +82,7 @@ const routes: Routes = [
{ path: 'account-detail', component: PartnerAccountManagementAccountDetailComponent },
{ path: 'recorded-detail/:id', component: PartnerAccountManagementRecordedDetailComponent },
{ path: 'withdraw-record', component: PartnerAccountManagementWithdrawalsRecordComponent },
- { path: 'withdraw-record/:id', component: PartnerAccountManagementWithdrawalsDetailComponent }
+ { path: 'withdraw-record/:id', component: PartnerAccountManagementWithdralDetailComponent }
]
},
{
@@ -90,6 +92,22 @@ const routes: Routes = [
{ path: 'detail/:id', component: PartnerDetailComponent },
{ path: 'add-etp-partner', component: AddEtpPartnerComponent },
{ path: 'add-personal-partner', component: AddPersonalPartnerComponent },
+ {
+ path: 'am',
+ children: [
+ { path: '', redirectTo: 'list' },
+ { path: '', component: PartnerAccountManagementListComponent },
+ { path: 'detail/:id', component: PartnerAccountManagementAccountDetailComponent },
+ { path: 'recorded/detail/:id', component: PartnerAccountManagementRecordedDetailComponent },
+ ]
+ },
+ {
+ path: 'withdraw-record',
+ children: [
+ { path: '', component: PartnerAccountManagementWithdrawalsRecordComponent },
+ { path: 'detail/:id', component: PartnerAccountManagementWithdralDetailComponent }
+ ]
+ },
]
},
{
@@ -100,10 +118,18 @@ const routes: Routes = [
{ path: 'channel-detail', component: ParterClaimAuditListChannelDetailComponent },
{ path: 'partner-detail', component: ParterClaimAuditListPartnerDetailComponent }
]
- }
+ },
+ {
+ path: 'recorded',
+ children: [
+ { path: 'record', component: PartnerRecordedRecordComponent },
+ { path: 'record/detail/:id', component: PartnerRecordedDetailComponent }
+ ]
+ },
+
];
@NgModule({
imports: [RouterModule.forChild(routes)],
exports: [RouterModule]
})
-export class PartnerRoutingModule {}
+export class PartnerRoutingModule { }
diff --git a/src/app/routes/partner/partner.module.ts b/src/app/routes/partner/partner.module.ts
index 50653057..ac40e6ac 100644
--- a/src/app/routes/partner/partner.module.ts
+++ b/src/app/routes/partner/partner.module.ts
@@ -8,46 +8,47 @@
* @FilePath : \\tms-obc-web\\src\\app\\routes\\partner\\partner.module.ts
* Copyright (C) 2022 huzhenhong. All rights reserved.
*/
-import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
+import { NgModule } from '@angular/core';
import { SharedModule } from '@shared';
-import { PartnerRoutingModule } from './partner-routing.module';
+import { PartnerAccountManagementAccountDetailComponent } from './account-management/components/account-detail/account-detail.component';
+import { PartnerAccountManagementListComponent } from './account-management/components/list/list.component';
+import { PartnerAccountManagementRecordedDetailComponent } from './account-management/components/recorded-detail/recorded-detail.component';
+import { PartnerAccountManagementVirtualAccountDetailComponent } from './account-management/components/virtual-account-detail/virtual-account-detail.component';
+import { PartnerAccountManagementWithdralDetailComponent } from './account-management/components/withdrawals-record/withdrawals-detail/withdrawals-detail.component';
+import { PartnerAccountManagementWithdrawalsRecordComponent } from './account-management/components/withdrawals-record/withdrawals-record.component';
import { PartnerBusinessStatisticsIndexComponent } from './business-statistics/components/index/index.component';
-import { ParterChannelSalesListComponent } from './channel-sales/components/list/list.component';
-import { ParterChannelSalesEditComponent } from './channel-sales/components/edit/edit.component';
-import { ParterLevelConfigEditComponent } from './level-config/components/edit/edit.component';
-import { ParterLevelConfigListComponent } from './level-config/components/list/list.component';
-import { PartnerPartnerStatisticsComponent } from './business-statistics/components/partner-statistics/partner-statistics.component';
-import { PartnerSaleStatisticsComponent } from './business-statistics/components/sale-statistics/sale-statistics.component';
-import { PartnerSaleCustomDetailComponent } from './business-statistics/components/sale-custom-detail/sale-custom-detail.component';
import { PartnerPartnerCustomDetailComponent } from './business-statistics/components/partner-custom-detail/partner-custom-detail.component';
-import { ParterRebateManageMentParticularsComponent } from './rebate-management/components/particulars/particulars.component';
-import { PartnerSalePartnerDetailComponent } from './business-statistics/components/sale-partner-detail/sale-partner-detail.component';
import { PartnerPartnerCustomOrderDetailComponent } from './business-statistics/components/partner-custom-order-detail/partner-custom-order-detail.component';
import { PartnerPartnerOrderDetailComponent } from './business-statistics/components/partner-order-detail/partner-order-detail.component';
-import { PartnerAccountManagementListComponent } from './account-management/components/list/list.component';
-import { ParterClaimAuditListComponent } from './claim-audit/components/list/list.component';
-import { ParterClaimAuditListChannelDetailComponent } from './claim-audit/components/channel-detail/channel-detail.component';
-import { ParterClaimAuditListPartnerDetailComponent } from './claim-audit/components/partner-detail/partner-detail.component';
+import { PartnerPartnerStatisticsComponent } from './business-statistics/components/partner-statistics/partner-statistics.component';
+import { PartnerSaleCustomDetailComponent } from './business-statistics/components/sale-custom-detail/sale-custom-detail.component';
+import { PartnerSalePartnerDetailComponent } from './business-statistics/components/sale-partner-detail/sale-partner-detail.component';
+import { PartnerSaleStatisticsComponent } from './business-statistics/components/sale-statistics/sale-statistics.component';
+import { ParterChannelSalesEditComponent } from './channel-sales/components/edit/edit.component';
+import { ParterChannelSalesListComponent } from './channel-sales/components/list/list.component';
import { ParterClaimAuditListChannelApproveComponent } from './claim-audit/components/channel-approve/channel-approve.component';
-import { ParterClaimAuditListPartnerApproveComponent } from './claim-audit/components/partner-approve/partner-approve.component';
-import { ParterClaimAuditListPartnerRejectComponent } from './claim-audit/components/partner-reject/partner-reject.component';
+import { ParterClaimAuditListChannelDetailComponent } from './claim-audit/components/channel-detail/channel-detail.component';
import { ParterClaimAuditListChannelRejectComponent } from './claim-audit/components/channel-reject/channel-reject.component';
-import { PartnerAccountManagementVirtualAccountDetailComponent } from './account-management/components/virtual-account-detail/virtual-account-detail.component';
-
-import { PartnerAccountManagementAccountDetailComponent } from './account-management/components/account-detail/account-detail.component';
-import { PartnerAccountManagementRecordedDetailComponent } from './account-management/components/recorded-detail/recorded-detail.component';
-import { PartnerAccountManagementWithdrawalsRecordComponent } from './account-management/components/withdrawals-record/withdrawals-record.component';
-import { PartnerAccountManagementWithdrawalsDetailComponent } from './account-management/components/withdrawals-record/withdrawals-detail/withdrawals-detail.component';
-import { PartnerDetailComponent } from './partner-list/components/partner-detail/partner-detail.component';
+import { ParterClaimAuditListComponent } from './claim-audit/components/list/list.component';
+import { ParterClaimAuditListPartnerApproveComponent } from './claim-audit/components/partner-approve/partner-approve.component';
+import { ParterClaimAuditListPartnerDetailComponent } from './claim-audit/components/partner-detail/partner-detail.component';
+import { ParterClaimAuditListPartnerRejectComponent } from './claim-audit/components/partner-reject/partner-reject.component';
+import { ParterLevelConfigEditComponent } from './level-config/components/edit/edit.component';
+import { ParterLevelConfigListComponent } from './level-config/components/list/list.component';
import { PartnerListComponent } from './partner-list/components/index/partner-list.component';
import { PartnerAuditModalComponent } from './partner-list/components/partner-audit-modal/partner-audit-modal.component';
+import { PartnerDetailComponent } from './partner-list/components/partner-detail/partner-detail.component';
import { PartnerListService } from './partner-list/services/partner-list.service';
+import { PartnerRoutingModule } from './partner-routing.module';
+import { ParterRebateManageMentParticularsComponent } from './rebate-management/components/particulars/particulars.component';
import { ParterRebateManageMentRecordComponent } from './rebate-management/components/rebate-record/rebate-record.component';
-import { ParterRebateManageMenAbnormalFeedbackComponent } from './rebate-management/model/abnormal-feedback/abnormal-feedback.component';
import { ParterRebateManageMentSettingComponent } from './rebate-management/components/rebate-setting/rebate-setting.component';
import { AddEtpPartnerComponent } from './partner-list/components/add-etp-partner/add-etp-partner.component';
import { AddPersonalPartnerComponent } from './partner-list/components/add-personal-partner/add-personal-partner.component';
+import { ParterRebateManageMenAbnormalFeedbackComponent } from './rebate-management/model/abnormal-feedback/abnormal-feedback.component';
+import { PartnerRecordedDetailComponent } from './recorded/components/detail/detail.component';
+import { PartnerRecordedRecordComponent } from './recorded/components/record/record.component';
const COMPONENTS: any[] = [
PartnerBusinessStatisticsIndexComponent,
@@ -77,7 +78,9 @@ const COMPONENTS: any[] = [
PartnerAccountManagementAccountDetailComponent,
PartnerAccountManagementRecordedDetailComponent,
PartnerAccountManagementWithdrawalsRecordComponent,
- PartnerAccountManagementWithdrawalsDetailComponent,
+ PartnerAccountManagementWithdralDetailComponent,
+ PartnerRecordedRecordComponent,
+ PartnerRecordedDetailComponent,
PartnerListComponent,
PartnerDetailComponent,
ParterRebateManageMenAbnormalFeedbackComponent,
@@ -92,4 +95,4 @@ const COMPONENTS: any[] = [
imports: [CommonModule, PartnerRoutingModule, SharedModule],
providers: [PartnerListService]
})
-export class PartnerModule {}
+export class PartnerModule { }
diff --git a/src/app/routes/partner/recorded/components/detail/detail.component.html b/src/app/routes/partner/recorded/components/detail/detail.component.html
new file mode 100644
index 00000000..ed894907
--- /dev/null
+++ b/src/app/routes/partner/recorded/components/detail/detail.component.html
@@ -0,0 +1,64 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ {{formData?.ltdName}}
+
+
+ {{formData?.bankType==='1'?'平安银行':'浦发银行'}}
+
+
+ {{formData?.refundApplyCode}}
+
+
+ {{formData?.bankAccountName}}
+
+
+ {{formData?.createTime}}
+
+
+ {{formData?.virtualAccount}}
+
+
+ {{formData?.refundStatusLabel}}
+
+
+ {{formData?.amount | currency}}
+
+
+ {{formData?.bankSerialNumber}}
+
+
+ {{formData?.bankCardNumber}}
+
+
+ {{formData?.refundStatus==='3'?'下载回单':'暂无回单'}}
+
+
+
+
+
+
diff --git a/src/app/routes/partner/recorded/components/detail/detail.component.less b/src/app/routes/partner/recorded/components/detail/detail.component.less
new file mode 100644
index 00000000..e299b7d1
--- /dev/null
+++ b/src/app/routes/partner/recorded/components/detail/detail.component.less
@@ -0,0 +1,17 @@
+:host::ng-deep {
+
+ .ant-alert-info {
+ background-color: #f3f3f3;
+ border : 1px solid #dbdbdb;
+
+ .ant-alert-message {
+ color: rgba(0, 0, 0, 0.85);
+ font-weight: 600;
+ font-size: 16px;
+ }
+ }
+
+ .ant-form-item {
+ margin-bottom: 15px;
+ }
+}
\ No newline at end of file
diff --git a/src/app/routes/partner/recorded/components/detail/detail.component.ts b/src/app/routes/partner/recorded/components/detail/detail.component.ts
new file mode 100644
index 00000000..a4c4b5ba
--- /dev/null
+++ b/src/app/routes/partner/recorded/components/detail/detail.component.ts
@@ -0,0 +1,87 @@
+import { Component, OnInit } from '@angular/core';
+import { ActivatedRoute } from '@angular/router';
+import { FreightAccountService } from 'src/app/routes/financial-management/services/freight-account.service';
+
+
+@Component({
+ selector: 'app-partner-recored-detail',
+ templateUrl: './detail.component.html',
+ styleUrls: ['./detail.component.less']
+})
+export class PartnerRecordedDetailComponent implements OnInit {
+ formData: any = {};
+
+ timeLineData: any = [];
+
+ constructor(public service: FreightAccountService, private route: ActivatedRoute) {
+ const id = route.snapshot.params.id;
+ this.loadRefundDetail(id);
+ }
+
+ ngOnInit(): void { }
+
+ loadRefundDetail(id: string) {
+ this.service.request(this.service.$api_get_refund_detail, { id }).subscribe(res => {
+ if (res) {
+ this.formData = res;
+ // 处理流程节点数据
+ // 流程是否结束
+ let isEnd = false;
+ if (res.successTime) {
+ isEnd = true;
+ if (res.refundStatus === '3') {
+ this.timeLineData.push({ time: res.successTime, value: `到账成功`, color: 'green' });
+ } else {
+ this.timeLineData.push({ time: res.successTime, value: `提现失败`, color: 'red' });
+ }
+ }
+ if (res.agreeTime && res.refundStatus !== '4') {
+ this.timeLineData.push({ time: res.agreeTime, value: `银行处理中`, color: 'gray' });
+ }
+ if (res.agreeTime) {
+ if (res.refundStatus === '4') {
+ isEnd = true;
+ this.timeLineData.push({
+ time: res.agreeTime,
+ value: `拒绝提现
操作人员:${res.handlerUserIdLabel}`,
+ color: 'red'
+ });
+ } else {
+ this.timeLineData.push({
+ time: res.agreeTime,
+ value: `审核通过
操作人员:${res.handlerUserIdLabel}`,
+ color: 'gray'
+ });
+ }
+ }
+ if (res.createTime) {
+ this.timeLineData.push({
+ time: res.createTime,
+ value: `提交提现申请
提现${res.amount}元至${res.bankName}(${res.bankCardNumber})
操作人员:${res.userIdLabel}`,
+ color: 'gray'
+ });
+ }
+ if (this.timeLineData?.length > 0 && !isEnd) {
+ this.timeLineData[0].color = 'green';
+ }
+ }
+ });
+ }
+
+ downBack() {
+ if (this.formData?.refundStatus !== '3') {
+ return;
+ }
+ this.service.getReceiptUrl(this.formData.receiptUrl, {
+ bankType: this.formData.bankType,
+ rmYll: this.formData.userId,
+ snglFlgCd: this.formData.coreSerNo,
+ bussType: '06',
+ ltdId: this.formData.ltdId
+ });
+ }
+
+ goBack() {
+ history.go(-1);
+ }
+}
diff --git a/src/app/routes/partner/recorded/components/record/record.component.html b/src/app/routes/partner/recorded/components/record/record.component.html
new file mode 100644
index 00000000..50438e09
--- /dev/null
+++ b/src/app/routes/partner/recorded/components/record/record.component.html
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 已选择
+ {{ selectedRows.length }} 条数据 累计提现 {{
+ totalCallNo }}
+
+
+
+
+
+
+
+
+ {{ item.bankName }}
{{ item.bankCardNumber }}
+
+
+
+
+
+
+
diff --git a/src/app/routes/partner/recorded/components/record/record.component.ts b/src/app/routes/partner/recorded/components/record/record.component.ts
new file mode 100644
index 00000000..e15f2aaa
--- /dev/null
+++ b/src/app/routes/partner/recorded/components/record/record.component.ts
@@ -0,0 +1,334 @@
+import { Component, OnInit, ViewChild } from '@angular/core';
+import { ActivatedRoute, Router } from '@angular/router';
+import { STComponent, STColumn, STChange, STRequestOptions, STData } from '@delon/abc/st';
+import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form';
+import { NzModalService } from 'ng-zorro-antd/modal';
+import { FreightAccountService } from 'src/app/routes/financial-management/services/freight-account.service';
+import Big from 'src/app/shared/utils/deal-precision';
+
+
+@Component({
+ selector: 'app-partner-recorded-record',
+ templateUrl: './record.component.html',
+ styleUrls: ['../../../../commom/less/box.less', '../../../../commom/less/expend-but.less']
+})
+export class PartnerRecordedRecordComponent implements OnInit {
+ @ViewChild('st', { static: true }) st!: STComponent;
+ @ViewChild('sf', { static: false }) sf!: SFComponent;
+ @ViewChild('auditModal', { static: false }) auditModal!: any;
+ @ViewChild('viewReasonModal', { static: false }) viewReasonModal!: any;
+ columns: STColumn[] = this.initST();
+ searchSchema: SFSchema = this.initSF();
+
+ _$expand = false;
+
+ selectedRows: any[] = [];
+ totalCallNo = 0;
+ refundStatus: any = '';
+
+ msg = '';
+ constructor(public service: FreightAccountService, private nzModalService: NzModalService, private router: Router, public ar: ActivatedRoute) { }
+
+ ngOnInit(): void { }
+
+ beforeReq = (requestOptions: STRequestOptions) => {
+ if (this.sf) {
+ Object.assign(requestOptions.body, {
+ ...this.sf.value,
+ createTime: {
+ start: this.sf.value.createTime?.[0] || '',
+ end: this.sf.value.createTime?.[1] || ''
+ },
+ refundStatus: this.refundStatus || null
+ });
+ }
+ return requestOptions;
+ };
+
+ afterRes = (data: any[], rawData?: any) => {
+ data = data.map(node => ({ ...node, disabled: node.refundStatus !== '1' }));
+ return data;
+ };
+
+ stChange(e: STChange): void {
+ if (e.type === 'checkbox') {
+ const checkRows = (e.checkbox as STData[]) || [];
+ //判断当前页是否有选中的行
+ if (checkRows.length === 0) {
+ // 当前页没有存在已勾选的行,移除之前所记录的当前页的行
+ const stList = this.st.list;
+ stList.forEach(item => {
+ this.selectedRows = this.selectedRows.filter((e: any) => e.id !== item.id);
+ })
+ } else {
+ //添加新增的行
+ checkRows.forEach((item: any) => {
+ const newSelectedList = this.selectedRows.filter((r: any) => r.id === item.id);
+ if (newSelectedList.length === 0) {
+ this.selectedRows.push(item);
+
+ }
+ })
+ // 移除取消选中的行
+ const stList = this.st.list;
+ stList.forEach(item => {
+ if (!item.checked) {
+ const index = this.selectedRows.findIndex(_item => item.id === _item.id);
+ if (index !== -1) this.selectedRows.splice(index, 1);
+ }
+ })
+ }
+ let totalCallNo = 0;
+ this.selectedRows.forEach((item => {
+ totalCallNo = new Big(this.totalCallNo).plus(item?.amount).parse();
+ }));
+ this.totalCallNo = totalCallNo;
+ } else if (e.type === 'loaded') {
+ // 页面加载时勾选
+ (e?.loaded || []).forEach((r) => {
+ this.selectedRows.forEach((x) => {
+ if (x.id === r.id) {
+ r.checked = true;
+ }
+ });
+ });
+ }
+ }
+
+ changeRefundStatus(status?: string) {
+ this.refundStatus = status || null;
+ this.st.load(1);
+ }
+
+ auditAction(item?: any) {
+ this.msg = '';
+ let params: Array
= [];
+ if (item) {
+ params = [item.id];
+ } else {
+ params = this.selectedRows.map(node => node.id);
+ }
+ const modal = this.nzModalService.create({
+ nzTitle: '审核',
+ nzContent: this.auditModal,
+ nzFooter: [
+ {
+ label: '拒绝',
+ type: 'default',
+ onClick: () => {
+ this.service
+ .request(this.service.$api_disagree_refund, {
+ refundApplicationId: params,
+ msg: this.msg
+ })
+ .subscribe(res => {
+ if (res) {
+ this.service.msgSrv.success('审核拒绝成功');
+ modal.destroy();
+ this.st.load(1);
+ }
+ });
+ }
+ },
+ {
+ label: '通过',
+ type: 'primary',
+ onClick: () => {
+ this.service
+ .request(this.service.$api_agree_refund, {
+ refundApplicationId: params,
+ msg: this.msg
+ })
+ .subscribe(res => {
+ if (res) {
+ this.service.msgSrv.success('审核通过成功');
+ modal.destroy();
+ this.st.load(1);
+ }
+ });
+ }
+ }
+ ]
+ });
+ modal.afterClose.subscribe(res => {
+ this.st.load();
+ });
+ }
+
+ showReason(item: any) {
+ const modal = this.nzModalService.create({
+ nzTitle: '查看原因',
+ nzContent: item?.rejectionCause || item?.failCause,
+ nzFooter: [
+ {
+ label: '关闭',
+ type: 'primary',
+ onClick: () => {
+ modal.destroy();
+ }
+ }
+ ]
+ });
+ }
+
+ /**
+ * 重置表单
+ */
+ resetSF() {
+ this.sf.reset();
+ this._$expand = false;
+ }
+
+ /**
+ * 伸缩查询条件
+ */
+ expandToggle() {
+ this._$expand = !this._$expand;
+ this.sf?.setValue('/expand', this._$expand);
+ }
+
+ private initSF(): SFSchema {
+ return {
+ properties: {
+ expand: {
+ type: 'boolean',
+ ui: {
+ hidden: true
+ }
+ },
+ refundApplyCode: {
+ type: 'string',
+ title: '提现单号',
+ ui: {
+ placeholder: '请输入'
+ }
+ },
+ refundStatus: {
+ type: 'string',
+ title: '提现状态',
+ ui: {
+ widget: 'dict-select',
+ params: { dictKey: 'refund:apply:status' },
+ placeholder: '请选择'
+ }
+ },
+ createTime: {
+ title: '提现时间',
+ type: 'string',
+ ui: {
+ widget: 'sl-from-to-search',
+ format: 'yyyy-MM-dd',
+ placeholder: '请选择',
+ nzShowTime: true
+ } as SFDateWidgetSchema
+ },
+ bankAccountName: {
+ type: 'string',
+ title: '账户名称',
+ ui: {
+ placeholder: '请输入',
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ }
+ },
+ accountType: {
+ type: 'string',
+ title: '账户类型',
+ ui: {
+ widget: 'dict-select',
+ params: { dictKey: 'bank:type' },
+ placeholder: '请选择',
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ }
+ },
+ ltdId: {
+ type: 'string',
+ title: '网络货运人',
+ ui: {
+ widget: 'select',
+ placeholder: '请选择',
+ allowClear: true,
+ asyncData: () => this.service.getNetworkFreightForwarder(),
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ }
+ },
+ bankType: {
+ type: 'string',
+ title: '银行类型',
+ ui: {
+ widget: 'dict-select',
+ params: { dictKey: 'bankname:type' },
+ placeholder: '请输入',
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ }
+ }
+ }
+ };
+ }
+
+ private initST(): STColumn[] {
+ return [
+ { title: '', index: 'key', type: 'checkbox', className: 'text-center' },
+ { title: '提现时间', index: 'createTime', width: 180, className: 'text-center' },
+ { title: '提现单号', index: 'refundApplyCode', width: 180, className: 'text-center' },
+ { title: '网络货运人', index: 'ltdName', width: 220, className: 'text-center' },
+ { title: '银行类型', index: 'bankTypeLabel', width: 100, className: 'text-center' },
+ { title: '账户类型', index: 'bankTypeLabel', width: 100, className: 'text-center' },
+ { title: '账户名称', index: 'bankAccountName', width: 220, className: 'text-center' },
+ { title: '虚拟账户', index: 'virtualAccount', width: 180, className: 'text-center' },
+ {
+ title: '提现金额',
+ index: 'amount',
+ width: 150,
+ type: 'widget',
+ className: 'text-right',
+ widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.amount }) }
+ },
+ { title: '提现银行账户', render: 'bankCardNumber', width: 200, className: 'text-center' },
+ { title: '提现状态', index: 'refundStatusLabel', width: 100, className: 'text-center' },
+ { title: '银行流水号', index: 'bankSerialNumber', width: 160, className: 'text-center' },
+ { title: '核心交易流水', index: 'coreSerNo', width: 180, className: 'text-center' },
+ { title: '失败原因', index: 'rejectionCause', width: 200, format: item => item.failCause, className: 'text-center' },
+ {
+ title: '操作',
+ fixed: 'right',
+ width: '110px',
+ buttons: [
+ {
+ text: '查看回单',
+ iif: item => item.refundStatus === '3',
+ click: item =>
+ this.service.getReceiptUrl(item.receiptUrl, {
+ bankType: item.bankType,
+ rmYll: item.userId,
+ snglFlgCd: item.coreSerNo,
+ bussType: '06',
+ ltdId: item.ltdId
+ })
+ },
+ {
+ text: '查看原因',
+ iif: item => item.refundStatus === '4',
+ click: item => this.showReason(item)
+ },
+ {
+ text: '审核',
+ iif: item => item.refundStatus === '1',
+ click: item => this.auditAction(item)
+ },
+ {
+ text: '详情',
+ click: item => this.router.navigate(['./detail/' + item.id], { relativeTo: this.ar })
+ }
+ ]
+ }
+ ];
+ }
+}
diff --git a/src/assets/mocks/menu-data.json b/src/assets/mocks/menu-data.json
index 8aaa42ed..6fce9bbf 100644
--- a/src/assets/mocks/menu-data.json
+++ b/src/assets/mocks/menu-data.json
@@ -547,11 +547,11 @@
"group": true,
"children": [{
"text": "账户管理",
- "link": "/partner/account-management/list"
+ "link": "/partner/account-management/am"
},
{
"text": "账户明细",
- "link": "/partner/account-management/account-detail",
+ "link": "/partner/account-management/am/detail/:id",
"hide": true
},
{
@@ -560,7 +560,12 @@
},
{
"text": "提现详情",
- "link": "/partner/account-management/withdraw-record/:id",
+ "link": "/partner/account-management/withdraw-record/detail/:id",
+ "hide": true
+ },
+ {
+ "text": "待入账明细",
+ "link": "/partner/account-management/am/recorded/detail/:id",
"hide": true
}
]
@@ -569,16 +574,25 @@
"text": "客户认领审核",
"link": "/partner/claim-audit/list",
"children": [{
- "text": "合伙人客户认领详情",
- "link": "/partner/claim-audit/partner-detail",
- "hide": true
- },
- {
- "text": "渠道销售客户认领详情",
- "link": "/partner/claim-audit/channel-detail",
- "hide": true
- }
- ]
+ "text": "合伙人客户认领详情",
+ "link": "/partner/claim-audit/partner-detail",
+ "hide": true
+ },
+ {
+ "text": "渠道销售客户认领详情",
+ "link": "/partner/claim-audit/channel-detail",
+ "hide": true
+ }
+ ]
+ },
+ {
+ "text": "入账记录",
+ "link": "/partner/recorded/record"
+ },
+ {
+ "text": "入账详情",
+ "link": "/partner/recorded/record/:id",
+ "hide": true
}
]
}