diff --git a/src/app/routes/financial-management/components/abnormal-gold/abnormal-gold.component.html b/src/app/routes/financial-management/components/abnormal-gold/abnormal-gold.component.html
new file mode 100644
index 00000000..ca5cf13d
--- /dev/null
+++ b/src/app/routes/financial-management/components/abnormal-gold/abnormal-gold.component.html
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/app/routes/financial-management/components/abnormal-gold/abnormal-gold.component.less b/src/app/routes/financial-management/components/abnormal-gold/abnormal-gold.component.less
new file mode 100644
index 00000000..c5f2b1ea
--- /dev/null
+++ b/src/app/routes/financial-management/components/abnormal-gold/abnormal-gold.component.less
@@ -0,0 +1,37 @@
+:host::ng-deep {
+ .search-box {
+ .ant-card-body {
+ padding-bottom: 18px;
+ }
+ }
+
+ .content-box {
+ .ant-card-body {
+ padding-top: 0;
+ }
+ }
+
+ nz-range-picker {
+ width: 100%;
+ }
+
+ .ant-tabs-tab-btn {
+ padding-left : 16px;
+ padding-right: 16px;
+ }
+}
+
+.expend-options {
+ margin-top: 0px;
+}
+
+
+@media (min-width: 1200px) {
+ .expend-options {
+ max-width: 400px;
+ position : absolute;
+ right : 0;
+ bottom : 25px;
+ }
+
+}
\ No newline at end of file
diff --git a/src/app/routes/financial-management/components/abnormal-gold/abnormal-gold.component.ts b/src/app/routes/financial-management/components/abnormal-gold/abnormal-gold.component.ts
new file mode 100644
index 00000000..43facb7e
--- /dev/null
+++ b/src/app/routes/financial-management/components/abnormal-gold/abnormal-gold.component.ts
@@ -0,0 +1,187 @@
+import { Component, OnInit, ViewChild } from '@angular/core';
+import { Router } from '@angular/router';
+import { STComponent, STColumn, STRequestOptions, STChange } from '@delon/abc/st';
+import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form';
+import { NzModalService } from 'ng-zorro-antd/modal';
+import { FreightAccountService } from '../../services/freight-account.service';
+import { ClearingModalComponent } from './clearing-modal/clearing-modal.component';
+
+@Component({
+ selector: 'app-abnormal-gold',
+ templateUrl: './abnormal-gold.component.html',
+ styleUrls: ['./abnormal-gold.component.less']
+})
+export class AbnormalGoldComponent implements OnInit {
+ @ViewChild('st', { static: true })
+ st!: STComponent;
+ @ViewChild('sf', { static: false })
+ sf!: SFComponent;
+ columns: STColumn[] = this.initST();
+ searchSchema: SFSchema = this.initSF();
+
+ reqParams = {};
+
+ _$expand = false;
+
+ constructor(public service: FreightAccountService, private nzModalService: NzModalService, private router: Router) {}
+
+ ngOnInit(): void {}
+
+ beforeReq = (requestOptions: STRequestOptions) => {
+ if (this.sf) {
+ this.reqParams = { ...this.sf.value };
+ }
+ return requestOptions;
+ };
+
+ refund(item: any) {
+ this.nzModalService.warning({
+ nzTitle: '确定要将该笔款项原路退回?',
+ nzOnOk: () => {}
+ });
+ }
+
+ clearingAction(item: any) {
+ const modal = this.nzModalService.create({
+ nzTitle: '清分',
+ nzContent: ClearingModalComponent,
+ nzOnOk: com => {
+ console.log(com.sf.value);
+
+ return false;
+ }
+ });
+ }
+
+ /**
+ * 重置表单
+ */
+ 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
+ }
+ },
+ orderSn: {
+ type: 'string',
+ title: '银行流水号',
+ ui: {
+ placeholder: '请输入'
+ }
+ },
+ receiveName: {
+ type: 'string',
+ title: '网络货运人',
+ enum: [{ label: '全部', value: '全部' }],
+ ui: {
+ widget: 'select',
+ placeholder: '请选择'
+ }
+ },
+ orderSn22: {
+ type: 'string',
+ title: '银行类型',
+ ui: {
+ placeholder: '请输入'
+ }
+ },
+ orderSn2: {
+ type: 'string',
+ title: '付款账户',
+ ui: {
+ placeholder: '请输入',
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ }
+ },
+ orderSn221: {
+ type: 'string',
+ title: '付款账号',
+ ui: {
+ placeholder: '请输入',
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ }
+ },
+ orderS2n221: {
+ type: 'string',
+ title: '付款银行',
+ ui: {
+ placeholder: '请输入',
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ }
+ },
+ createTime: {
+ title: '转账时间',
+ type: 'string',
+ ui: {
+ widget: 'date',
+ mode: 'range',
+ format: 'yyyy-MM-dd',
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ } as SFDateWidgetSchema
+ }
+ }
+ };
+ }
+
+ private initST(): STColumn[] {
+ return [
+ { title: '银行流水号', index: 'no', width: 150 },
+ { title: '网络货运人', index: 'callNo', width: 120 },
+ { title: '银行类型', index: 'callNo', width: 100 },
+ { title: '资金总账号', index: 'callNo', width: 120 },
+ { title: '充值金额', index: 'callNo', width: 100 },
+ { title: '付款账户', index: 'callNo', width: 100 },
+ { title: '付款账号', index: 'callNo', width: 100 },
+ { title: '付款银行', index: 'callNo', width: 100 },
+ { title: '转账时间', index: 'callNo', type: 'date', width: 150 },
+ { title: '转账备注', index: 'callNo', width: 100 },
+ { title: '操作人', index: 'callNo', width: 90 },
+ { title: '操作时间', index: 'callNo', type: 'date', width: 150 },
+ { title: '状态', index: 'callNo', width: 90 },
+ {
+ title: '操作',
+ fixed: 'right',
+ className: 'text-center',
+ width: 120,
+ buttons: [
+ {
+ text: '清分',
+ click: item => this.clearingAction(item)
+ },
+ {
+ text: '退款',
+ click: item => this.refund(item)
+ },
+ {
+ text: '查看',
+ click: item => this.router.navigate(['/financial-management/withdrawals-record/detail/1'])
+ }
+ ]
+ }
+ ];
+ }
+}
diff --git a/src/app/routes/financial-management/components/abnormal-gold/clearing-modal/clearing-modal.component.html b/src/app/routes/financial-management/components/abnormal-gold/clearing-modal/clearing-modal.component.html
new file mode 100644
index 00000000..fd8c045d
--- /dev/null
+++ b/src/app/routes/financial-management/components/abnormal-gold/clearing-modal/clearing-modal.component.html
@@ -0,0 +1,2 @@
+
+
\ No newline at end of file
diff --git a/src/app/routes/financial-management/components/abnormal-gold/clearing-modal/clearing-modal.component.less b/src/app/routes/financial-management/components/abnormal-gold/clearing-modal/clearing-modal.component.less
new file mode 100644
index 00000000..e69de29b
diff --git a/src/app/routes/financial-management/components/abnormal-gold/clearing-modal/clearing-modal.component.ts b/src/app/routes/financial-management/components/abnormal-gold/clearing-modal/clearing-modal.component.ts
new file mode 100644
index 00000000..b96e5fe3
--- /dev/null
+++ b/src/app/routes/financial-management/components/abnormal-gold/clearing-modal/clearing-modal.component.ts
@@ -0,0 +1,96 @@
+import { Component, OnInit, ViewChild } from '@angular/core';
+import { apiConf } from '@conf/api.conf';
+import { SFComponent, SFSchema, SFTextWidgetSchema, SFUISchema, SFUploadWidgetSchema } from '@delon/form';
+import { NzModalRef } from 'ng-zorro-antd/modal';
+import { FreightAccountService } from '../../../services/freight-account.service';
+
+const IMAGECONFIG = {
+ action: apiConf.waterFileUpload,
+ fileType: 'image/png,image/jpeg,image/jpg,image/gif',
+ fileSize: 5120,
+ limit: 1,
+ limitFileCount: 1,
+ resReName: 'data.fullFileWatermarkPath',
+ urlReName: 'data.fullFileWatermarkPath',
+ widget: 'upload',
+ name: 'multipartFile',
+ multiple: false,
+ listType: 'picture-card'
+};
+
+@Component({
+ selector: 'app-clearing-modal',
+ templateUrl: './clearing-modal.component.html',
+ styleUrls: ['./clearing-modal.component.less']
+})
+export class ClearingModalComponent implements OnInit {
+ @ViewChild('sf', { static: false })
+ sf!: SFComponent;
+ i: any;
+ schema!: SFSchema;
+ ui: SFUISchema = {
+ '*': {
+ spanLabelFixed: 120,
+ grid: { span: 18 }
+ }
+ };
+
+ constructor(private modal: NzModalRef, public service: FreightAccountService) {}
+
+ ngOnInit(): void {
+ this.initSF(this.i);
+ }
+ initSF(staff: any) {
+ this.schema = {
+ properties: {
+ name: {
+ title: '入账金额',
+ type: 'string',
+ ui: {
+ widget: 'text'
+ } as SFTextWidgetSchema,
+ default: '10000.00'
+ },
+ name2: {
+ title: '网络货运人',
+ type: 'string',
+ ui: {
+ widget: 'text'
+ } as SFTextWidgetSchema,
+ default: '天津怡亚通物流科技有限公司'
+ },
+ name3: {
+ title: '银行类型',
+ type: 'string',
+ ui: {
+ widget: 'text'
+ } as SFTextWidgetSchema,
+ default: '平安银行'
+ },
+ receiveName: {
+ type: 'string',
+ title: '分配对象',
+ enum: [{ label: '全部', value: '全部' }],
+ ui: {
+ widget: 'select',
+ placeholder: '请选择'
+ },
+ default: ''
+ },
+ licensePhotoWatermark: {
+ type: 'string',
+ title: '上传凭证',
+ ui: {
+ ...IMAGECONFIG,
+ change: args => {
+ if (args.type === 'success') {
+ this.sf.setValue('/licensePhoto', args.fileList[0].response.data.fullFilePath);
+ }
+ }
+ } as SFUploadWidgetSchema
+ }
+ },
+ required: ['name', 'name2', 'name3', 'receiveName']
+ };
+ }
+}
diff --git a/src/app/routes/financial-management/components/cost-management/cost-management.component.html b/src/app/routes/financial-management/components/cost-management/cost-management.component.html
new file mode 100644
index 00000000..d2661708
--- /dev/null
+++ b/src/app/routes/financial-management/components/cost-management/cost-management.component.html
@@ -0,0 +1 @@
+
cost-management works!
diff --git a/src/app/routes/financial-management/components/cost-management/cost-management.component.less b/src/app/routes/financial-management/components/cost-management/cost-management.component.less
new file mode 100644
index 00000000..e69de29b
diff --git a/src/app/routes/financial-management/components/cost-management/cost-management.component.ts b/src/app/routes/financial-management/components/cost-management/cost-management.component.ts
new file mode 100644
index 00000000..eeaf8103
--- /dev/null
+++ b/src/app/routes/financial-management/components/cost-management/cost-management.component.ts
@@ -0,0 +1,15 @@
+import { Component, OnInit } from '@angular/core';
+
+@Component({
+ selector: 'app-cost-management',
+ templateUrl: './cost-management.component.html',
+ styleUrls: ['./cost-management.component.less']
+})
+export class CostManagementComponent implements OnInit {
+
+ constructor() { }
+
+ ngOnInit(): void {
+ }
+
+}
diff --git a/src/app/routes/financial-management/components/payment-record/payment-record.component.html b/src/app/routes/financial-management/components/payment-record/payment-record.component.html
new file mode 100644
index 00000000..e3cad067
--- /dev/null
+++ b/src/app/routes/financial-management/components/payment-record/payment-record.component.html
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/app/routes/financial-management/components/payment-record/payment-record.component.less b/src/app/routes/financial-management/components/payment-record/payment-record.component.less
new file mode 100644
index 00000000..cd8c3436
--- /dev/null
+++ b/src/app/routes/financial-management/components/payment-record/payment-record.component.less
@@ -0,0 +1,41 @@
+:host::ng-deep {
+ .search-box {
+ .ant-card-body {
+ padding-bottom: 18px;
+ }
+ }
+
+ .content-box {
+ .ant-card-body {
+ padding-top: 0;
+ }
+ }
+
+ nz-range-picker {
+ width: 100%;
+ }
+
+ .ant-tabs-tab-btn {
+ padding-left : 16px;
+ padding-right: 16px;
+ }
+
+ .text-truncate {
+ white-space: normal;
+ }
+}
+
+.expend-options {
+ margin-top: 0px;
+}
+
+
+@media (min-width: 1200px) {
+ .expend-options {
+ max-width: 400px;
+ position : absolute;
+ right : 0;
+ bottom : 25px;
+ }
+
+}
\ No newline at end of file
diff --git a/src/app/routes/financial-management/components/payment-record/payment-record.component.ts b/src/app/routes/financial-management/components/payment-record/payment-record.component.ts
new file mode 100644
index 00000000..ececa284
--- /dev/null
+++ b/src/app/routes/financial-management/components/payment-record/payment-record.component.ts
@@ -0,0 +1,242 @@
+import { Component, OnInit, ViewChild } from '@angular/core';
+import { Router } from '@angular/router';
+import { STComponent, STColumn, STRequestOptions } from '@delon/abc/st';
+import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form';
+import { NzModalService } from 'ng-zorro-antd/modal';
+import { FreightAccountService } from '../../services/freight-account.service';
+import { ClearingModalComponent } from '../abnormal-gold/clearing-modal/clearing-modal.component';
+
+@Component({
+ selector: 'app-payment-record',
+ templateUrl: './payment-record.component.html',
+ styleUrls: ['./payment-record.component.less']
+})
+export class PaymentRecordComponent implements OnInit {
+ @ViewChild('st', { static: true })
+ st!: STComponent;
+ @ViewChild('sf', { static: false })
+ sf!: SFComponent;
+ columns: STColumn[] = this.initST();
+ searchSchema: SFSchema = this.initSF();
+
+ reqParams = {};
+
+ _$expand = false;
+
+ constructor(public service: FreightAccountService, private nzModalService: NzModalService, private router: Router) {}
+
+ ngOnInit(): void {}
+
+ beforeReq = (requestOptions: STRequestOptions) => {
+ if (this.sf) {
+ this.reqParams = { ...this.sf.value };
+ }
+ return requestOptions;
+ };
+
+ refund(item: any) {
+ this.nzModalService.warning({
+ nzTitle: '确定要关闭所选支付记录?',
+ nzOnOk: () => {}
+ });
+ }
+
+ /**
+ * 重置表单
+ */
+ 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
+ }
+ },
+ orderSn: {
+ type: 'string',
+ title: '支付编号',
+ ui: {
+ placeholder: '请输入'
+ }
+ },
+ order2Sn: {
+ type: 'string',
+ title: '订单号',
+ ui: {
+ placeholder: '请输入'
+ }
+ },
+ orderSn22: {
+ type: 'string',
+ title: '货源编号',
+ ui: {
+ placeholder: '请输入'
+ }
+ },
+ orderSn2: {
+ type: 'string',
+ title: '服务类型',
+ enum: [{ label: '全部', value: '全部' }],
+ ui: {
+ widget: 'select',
+ placeholder: '请选择',
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ }
+ },
+ orderSn221: {
+ type: 'string',
+ title: '承运司机',
+ ui: {
+ placeholder: '请输入',
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ }
+ },
+ orderS2n221: {
+ type: 'string',
+ title: '车牌号',
+ ui: {
+ placeholder: '请输入',
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ }
+ },
+ orderS2n2221: {
+ type: 'string',
+ title: '收款人',
+ ui: {
+ placeholder: '请输入收款人姓名/手机号',
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ }
+ },
+ orderSn221f: {
+ type: 'string',
+ title: '车队长收款',
+ enum: [{ label: '全部', value: '全部' }],
+ ui: {
+ widget: 'select',
+ placeholder: '请选择',
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ }
+ },
+ ord1erSn221f: {
+ type: 'string',
+ title: '支付类型',
+ enum: [{ label: '全部', value: '全部' }],
+ ui: {
+ widget: 'select',
+ placeholder: '请选择',
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ }
+ },
+ createTime: {
+ title: '申请时间',
+ type: 'string',
+ ui: {
+ widget: 'date',
+ mode: 'range',
+ format: 'yyyy-MM-dd',
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ } as SFDateWidgetSchema
+ },
+ create1Time: {
+ title: '处理时间',
+ type: 'string',
+ ui: {
+ widget: 'date',
+ mode: 'range',
+ format: 'yyyy-MM-dd',
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ } as SFDateWidgetSchema
+ },
+ orderSn5221f: {
+ type: 'string',
+ title: '银行类型',
+ enum: [{ label: '全部', value: '全部' }],
+ ui: {
+ widget: 'select',
+ placeholder: '请选择',
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ }
+ },
+ orde1rSn5221f: {
+ type: 'string',
+ title: '网络货运人',
+ enum: [{ label: '全部', value: '全部' }],
+ ui: {
+ widget: 'select',
+ placeholder: '请选择',
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ }
+ }
+ }
+ };
+ }
+
+ private initST(): STColumn[] {
+ return [
+ { title: '支付编号', index: 'no', width: 150, format: item => `JS20210930000001` },
+ { title: '支付金额', index: 'callNo', width: 100, format: item => `¥2000.00` },
+ { title: '运费明细', index: 'callNo', width: 150, format: item => `预付:¥ 4000.00附加费:¥ 200.00` },
+ { title: '支付类型', index: 'callNo', width: 100 },
+ { title: '货主', index: 'callNo', width: 100 },
+ { title: '订单号', index: 'callNo', width: 100, format: item => `DZ210817466436972` },
+ { title: '运单号', index: 'callNo', width: 100, format: item => `DZ210817466436972` },
+ { title: '货源编号', index: 'callNo', width: 100 },
+ { title: '服务类型', index: 'callNo', type: 'date', width: 150 },
+ { title: '承运司机', index: 'callNo', width: 120, format: item => `特朗普13789040523粤GT8419` },
+ { title: '收款人', index: 'callNo', width: 120, format: item => `拜登13789040523` },
+ { title: '银行类型', index: 'callNo', type: 'date', width: 150 },
+ { title: '网络货运人', index: 'callNo', width: 120 },
+ { title: '申请时间', index: 'callNo', width: 150 },
+ { title: '申请人', index: 'callNo', width: 90 },
+ { title: '处理时间', index: 'callNo', width: 150 },
+ { title: '处理人', index: 'callNo', width: 90 },
+ { title: '失败原因', index: 'callNo', width: 100 },
+ {
+ title: '操作',
+ fixed: 'right',
+ className: 'text-center',
+ width: 120,
+ buttons: [
+ {
+ text: '关闭',
+ click: item => this.refund(item)
+ }
+ ]
+ }
+ ];
+ }
+}
diff --git a/src/app/routes/financial-management/components/transaction-flow/transaction-flow.component.html b/src/app/routes/financial-management/components/transaction-flow/transaction-flow.component.html
new file mode 100644
index 00000000..b187ba50
--- /dev/null
+++ b/src/app/routes/financial-management/components/transaction-flow/transaction-flow.component.html
@@ -0,0 +1,31 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/app/routes/financial-management/components/transaction-flow/transaction-flow.component.less b/src/app/routes/financial-management/components/transaction-flow/transaction-flow.component.less
new file mode 100644
index 00000000..cd8c3436
--- /dev/null
+++ b/src/app/routes/financial-management/components/transaction-flow/transaction-flow.component.less
@@ -0,0 +1,41 @@
+:host::ng-deep {
+ .search-box {
+ .ant-card-body {
+ padding-bottom: 18px;
+ }
+ }
+
+ .content-box {
+ .ant-card-body {
+ padding-top: 0;
+ }
+ }
+
+ nz-range-picker {
+ width: 100%;
+ }
+
+ .ant-tabs-tab-btn {
+ padding-left : 16px;
+ padding-right: 16px;
+ }
+
+ .text-truncate {
+ white-space: normal;
+ }
+}
+
+.expend-options {
+ margin-top: 0px;
+}
+
+
+@media (min-width: 1200px) {
+ .expend-options {
+ max-width: 400px;
+ position : absolute;
+ right : 0;
+ bottom : 25px;
+ }
+
+}
\ No newline at end of file
diff --git a/src/app/routes/financial-management/components/transaction-flow/transaction-flow.component.ts b/src/app/routes/financial-management/components/transaction-flow/transaction-flow.component.ts
new file mode 100644
index 00000000..528cb1ab
--- /dev/null
+++ b/src/app/routes/financial-management/components/transaction-flow/transaction-flow.component.ts
@@ -0,0 +1,214 @@
+import { Component, OnInit, ViewChild } from '@angular/core';
+import { Router } from '@angular/router';
+import { STComponent, STColumn, STRequestOptions } from '@delon/abc/st';
+import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form';
+import { NzModalService } from 'ng-zorro-antd/modal';
+import { FreightAccountService } from '../../services/freight-account.service';
+
+@Component({
+ selector: 'app-transaction-flow',
+ templateUrl: './transaction-flow.component.html',
+ styleUrls: ['./transaction-flow.component.less']
+})
+export class TransactionFlowComponent implements OnInit {
+ @ViewChild('st', { static: true })
+ st!: STComponent;
+ @ViewChild('sf', { static: false })
+ sf!: SFComponent;
+ columns: STColumn[] = this.initST();
+ searchSchema: SFSchema = this.initSF();
+
+ reqParams = {};
+
+ _$expand = false;
+
+ constructor(public service: FreightAccountService, private nzModalService: NzModalService, private router: Router) {}
+
+ ngOnInit(): void {}
+
+ beforeReq = (requestOptions: STRequestOptions) => {
+ if (this.sf) {
+ this.reqParams = { ...this.sf.value };
+ }
+ return requestOptions;
+ };
+
+ /**
+ * 重置表单
+ */
+ 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
+ }
+ },
+ orderSn: {
+ title: '交易时间',
+ type: 'string',
+ ui: {
+ widget: 'date',
+ mode: 'range',
+ format: 'yyyy-MM-dd'
+ } as SFDateWidgetSchema
+ },
+ order2Sn: {
+ type: 'string',
+ title: '流水号',
+ ui: {
+ placeholder: '请输入'
+ }
+ },
+ orderSn22: {
+ type: 'string',
+ title: '关联单号',
+ ui: {
+ placeholder: '请输入'
+ }
+ },
+ orderSn2: {
+ type: 'string',
+ title: '交易类型',
+ enum: [
+ { label: '全部', value: '全部' },
+ { label: '订单支付', value: '订单支付' },
+ { label: '余额充值', value: '余额充值' },
+ { label: '余额提现', value: '余额提现' },
+ { label: '资金分配', value: '资金分配' },
+ { label: '资金回收', value: '资金回收' }
+ ],
+ ui: {
+ widget: 'select',
+ placeholder: '请选择',
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ }
+ },
+ orderSn221: {
+ type: 'string',
+ title: '收支类型',
+ enum: [
+ { label: '全部', value: '全部' },
+ { label: '收入', value: '收入' },
+ { label: '支出', value: '支出' }
+ ],
+ ui: {
+ widget: 'select',
+ placeholder: '请选择',
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ }
+ },
+ orderS2n221: {
+ type: 'string',
+ title: '账户类型',
+ enum: [
+ { label: '全部', value: '全部' },
+ { label: '收入', value: '收入' },
+ { label: '支出', value: '支出' }
+ ],
+ ui: {
+ widget: 'select',
+ placeholder: '请选择',
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ }
+ },
+ orderS2n2221: {
+ type: 'string',
+ title: '账户名称',
+ ui: {
+ placeholder: '请输入',
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ }
+ },
+ orderSn221f: {
+ type: 'string',
+ title: '所属项目',
+ enum: [{ label: '全部', value: '全部' }],
+ ui: {
+ widget: 'select',
+ placeholder: '请选择',
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ }
+ },
+ ord1erSn221f: {
+ type: 'string',
+ title: '银行类型',
+ enum: [{ label: '全部', value: '全部' }],
+ ui: {
+ widget: 'select',
+ placeholder: '请选择',
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ }
+ },
+ orde1rSn5221f: {
+ type: 'string',
+ title: '网络货运人',
+ enum: [{ label: '全部', value: '全部' }],
+ ui: {
+ widget: 'select',
+ placeholder: '请选择',
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ }
+ }
+ }
+ };
+ }
+
+ private initST(): STColumn[] {
+ return [
+ { title: '交易时间', index: 'callNo', width: 150 },
+ { title: '流水号', index: 'no', width: 150 },
+ { title: '交易类型', index: 'callNo', width: 100 },
+ { title: '关联单号', index: 'callNo', width: 150 },
+ { title: '账户类型', index: 'callNo', width: 100 },
+ { title: '账户名称', index: 'callNo', width: 100 },
+ { title: '所属项目', index: 'callNo', width: 100 },
+ { title: '收支类型', index: 'callNo', width: 100 },
+ { title: '交易金额', index: 'callNo', width: 100 },
+ { title: '账户余额', index: 'callNo', width: 100 },
+ { title: '网络货运人', index: 'callNo', width: 120 },
+ { title: '银行类型', index: 'callNo', width: 100 },
+ { title: '银行流水号', index: 'callNo', width: 120 },
+ {
+ title: '操作',
+ fixed: 'right',
+ className: 'text-center',
+ width: 120,
+ buttons: [
+ {
+ text: '查看回单'
+ // click: item => this.refund(item)
+ }
+ ]
+ }
+ ];
+ }
+}
diff --git a/src/app/routes/financial-management/components/voucher-management/voucher-management.component.html b/src/app/routes/financial-management/components/voucher-management/voucher-management.component.html
new file mode 100644
index 00000000..6157896d
--- /dev/null
+++ b/src/app/routes/financial-management/components/voucher-management/voucher-management.component.html
@@ -0,0 +1 @@
+voucher-management works!
diff --git a/src/app/routes/financial-management/components/voucher-management/voucher-management.component.less b/src/app/routes/financial-management/components/voucher-management/voucher-management.component.less
new file mode 100644
index 00000000..e69de29b
diff --git a/src/app/routes/financial-management/components/voucher-management/voucher-management.component.ts b/src/app/routes/financial-management/components/voucher-management/voucher-management.component.ts
new file mode 100644
index 00000000..ed46a770
--- /dev/null
+++ b/src/app/routes/financial-management/components/voucher-management/voucher-management.component.ts
@@ -0,0 +1,15 @@
+import { Component, OnInit } from '@angular/core';
+
+@Component({
+ selector: 'app-voucher-management',
+ templateUrl: './voucher-management.component.html',
+ styleUrls: ['./voucher-management.component.less']
+})
+export class VoucherManagementComponent implements OnInit {
+
+ constructor() { }
+
+ ngOnInit(): void {
+ }
+
+}
diff --git a/src/app/routes/financial-management/components/voucher-summary/voucher-summary.component.html b/src/app/routes/financial-management/components/voucher-summary/voucher-summary.component.html
new file mode 100644
index 00000000..4ebfe82d
--- /dev/null
+++ b/src/app/routes/financial-management/components/voucher-summary/voucher-summary.component.html
@@ -0,0 +1 @@
+voucher-summary works!
diff --git a/src/app/routes/financial-management/components/voucher-summary/voucher-summary.component.less b/src/app/routes/financial-management/components/voucher-summary/voucher-summary.component.less
new file mode 100644
index 00000000..e69de29b
diff --git a/src/app/routes/financial-management/components/voucher-summary/voucher-summary.component.ts b/src/app/routes/financial-management/components/voucher-summary/voucher-summary.component.ts
new file mode 100644
index 00000000..52dcef62
--- /dev/null
+++ b/src/app/routes/financial-management/components/voucher-summary/voucher-summary.component.ts
@@ -0,0 +1,15 @@
+import { Component, OnInit } from '@angular/core';
+
+@Component({
+ selector: 'app-voucher-summary',
+ templateUrl: './voucher-summary.component.html',
+ styleUrls: ['./voucher-summary.component.less']
+})
+export class VoucherSummaryComponent implements OnInit {
+
+ constructor() { }
+
+ ngOnInit(): void {
+ }
+
+}
diff --git a/src/app/routes/financial-management/financial-managemen-routing.module.ts b/src/app/routes/financial-management/financial-managemen-routing.module.ts
index b6f4d89b..3dbcd78b 100644
--- a/src/app/routes/financial-management/financial-managemen-routing.module.ts
+++ b/src/app/routes/financial-management/financial-managemen-routing.module.ts
@@ -7,6 +7,10 @@ import { RouterModule, Routes } from '@angular/router';
import { FreightAccountDetailComponent } from './components/freight-account/freight-account-detail/freight-account-detail.component';
import { DriverAccountDetailComponent } from './components/driver-account/driver-account-detail/driver-account-detail.component';
import { WithdrawalsDetailComponent } from './components/withdrawals-record/withdrawals-detail/withdrawals-detail.component';
+import { CostManagementComponent } from './components/cost-management/cost-management.component';
+import { AbnormalGoldComponent } from './components/abnormal-gold/abnormal-gold.component';
+import { PaymentRecordComponent } from './components/payment-record/payment-record.component';
+import { TransactionFlowComponent } from './components/transaction-flow/transaction-flow.component';
const routes: Routes = [
{ path: 'freight-account', component: FreightAccountComponent },
@@ -16,6 +20,12 @@ const routes: Routes = [
{ path: 'recharge-record', component: RechargeRecordComponent },
{ path: 'withdrawals-record', component: WithdrawalsRecordComponent },
{ path: 'withdrawals-record/detail/:id', component: WithdrawalsDetailComponent },
+ // { path: 'voucher-management', component: VoucherManagementComponent },
+ // { path: 'voucher-summary', component: VoucherSummaryComponent },
+ { path: 'cost-management', component: CostManagementComponent },
+ { path: 'abnormal-gold', component: AbnormalGoldComponent },
+ { path: 'payment-record', component: PaymentRecordComponent },
+ { path: 'transaction-flow', component: TransactionFlowComponent },
];
@NgModule({
diff --git a/src/app/routes/financial-management/financial-management.module.ts b/src/app/routes/financial-management/financial-management.module.ts
index 4b64f8ac..a2621552 100644
--- a/src/app/routes/financial-management/financial-management.module.ts
+++ b/src/app/routes/financial-management/financial-management.module.ts
@@ -10,16 +10,25 @@ import { FreightAccountDetailComponent } from './components/freight-account/frei
import { DriverAccountDetailComponent } from './components/driver-account/driver-account-detail/driver-account-detail.component';
import { SettingFinancialComponent } from './components/main-account/setting-financial/setting-financial.component';
import { WithdrawalsDetailComponent } from './components/withdrawals-record/withdrawals-detail/withdrawals-detail.component';
+import { CostManagementComponent } from './components/cost-management/cost-management.component';
+import { AbnormalGoldComponent } from './components/abnormal-gold/abnormal-gold.component';
+import { PaymentRecordComponent } from './components/payment-record/payment-record.component';
+import { TransactionFlowComponent } from './components/transaction-flow/transaction-flow.component';
+import { ClearingModalComponent } from './components/abnormal-gold/clearing-modal/clearing-modal.component';
const ROUTESCOMPONENTS = [
FreightAccountComponent,
DriverAccountComponent,
RechargeRecordComponent,
WithdrawalsRecordComponent,
- WithdrawalsDetailComponent
+ WithdrawalsDetailComponent,
+ CostManagementComponent,
+ AbnormalGoldComponent,
+ PaymentRecordComponent,
+ TransactionFlowComponent
];
-const NOTROUTECOMPONENTS = [DriverAccountDetailComponent, FreightAccountDetailComponent, SettingFinancialComponent];
+const NOTROUTECOMPONENTS = [DriverAccountDetailComponent, FreightAccountDetailComponent, SettingFinancialComponent, ClearingModalComponent];
@NgModule({
declarations: [...ROUTESCOMPONENTS, ...NOTROUTECOMPONENTS],
diff --git a/src/app/routes/ticket-management/components/invoiced-list/invoiced-list.component.html b/src/app/routes/ticket-management/components/invoiced-list/invoiced-list.component.html
index 9e63c5e5..74605d6e 100644
--- a/src/app/routes/ticket-management/components/invoiced-list/invoiced-list.component.html
+++ b/src/app/routes/ticket-management/components/invoiced-list/invoiced-list.component.html
@@ -24,48 +24,32 @@
-
-
+
+
-
-
- {{item.callNo}}
- 查看物流
+
+ {{item.no}}
+ 预览发票
-
-
-
-
- 顺丰快递:SF123456789
+ 顺丰快递: SF123456789
已签收
diff --git a/src/app/routes/ticket-management/components/invoiced-list/invoiced-list.component.less b/src/app/routes/ticket-management/components/invoiced-list/invoiced-list.component.less
index 01444c35..c71e2dfd 100644
--- a/src/app/routes/ticket-management/components/invoiced-list/invoiced-list.component.less
+++ b/src/app/routes/ticket-management/components/invoiced-list/invoiced-list.component.less
@@ -15,6 +15,9 @@
width: 100%;
}
+ .text-truncate {
+ white-space: normal;
+ }
}
.expend-options {
diff --git a/src/app/routes/ticket-management/components/invoiced-list/invoiced-list.component.ts b/src/app/routes/ticket-management/components/invoiced-list/invoiced-list.component.ts
index e8c4ab66..5f31cd3c 100644
--- a/src/app/routes/ticket-management/components/invoiced-list/invoiced-list.component.ts
+++ b/src/app/routes/ticket-management/components/invoiced-list/invoiced-list.component.ts
@@ -1,6 +1,6 @@
import { Component, OnInit, ViewChild } from '@angular/core';
import { Router } from '@angular/router';
-import { STComponent, STColumn, STChange } from '@delon/abc/st';
+import { STComponent, STColumn, STChange, STRequestOptions } from '@delon/abc/st';
import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form';
import { NzModalService } from 'ng-zorro-antd/modal';
import { TicketService } from '../../services/ticket.service';
@@ -20,100 +20,8 @@ export class InvoicedListComponent implements OnInit {
logosticsModal!: any;
@ViewChild('logosticsLogsModal', { static: false })
logosticsLogsModal!: any;
- columns: STColumn[] = [
- { title: '', index: 'key', type: 'checkbox' },
- { title: '发票号码', index: 'no' },
- { title: '申请编号', index: 'callNo' },
- { title: '托运人', index: 'callNo' },
- { title: '无车承运人', index: 'callNo' },
- { title: '运单数', index: 'callNo' },
- { title: '开票金额', index: 'callNo' },
- { title: '税价合计', index: 'callNo' },
- { title: '开票日期', index: 'updatedAt', type: 'date' },
- { title: '快递信息', render: 'logostics' },
- {
- title: '操作',
- buttons: [
- {
- text: '作废发票',
- click: item => this.deletedInvoice(item)
- },
- {
- text: '预览发票',
- click: item => this.routeTo(item)
- },
- {
- text: '填写物流',
- click: item => this.editInvoice(item)
- }
- ]
- }
- ];
- searchSchema: SFSchema = {
- properties: {
- expand: {
- type: 'boolean',
- ui: {
- hidden: true
- }
- },
- orderSn: {
- type: 'string',
- title: '发票号码',
- ui: {
- autocomplete: 'off'
- }
- },
- orderSn2: {
- type: 'string',
- title: '申请编号',
- ui: {
- autocomplete: 'off'
- }
- },
- createTime: {
- title: '开票日期',
- type: 'string',
- ui: {
- widget: 'date',
- mode: 'range',
- format: 'yyyy-MM-dd'
- } as SFDateWidgetSchema
- },
- receiveName: {
- type: 'string',
- title: '托运人',
- enum: [{ label: '全部', value: '全部' }],
- ui: {
- widget: 'select',
- placeholder: '请选择',
- change: (i: any) => {
- this.sf.value.receiveName = i;
- this.sf?.setValue('/receiveName', i);
- },
- visibleIf: {
- expand: (value: boolean) => value
- }
- }
- },
- receiveName2: {
- type: 'string',
- title: '无车承运人',
- enum: [{ label: '全部', value: '全部' }],
- ui: {
- widget: 'select',
- placeholder: '请选择',
- change: (i: any) => {
- this.sf.value.receiveName2 = i;
- this.sf?.setValue('/receiveName2', i);
- },
- visibleIf: {
- expand: (value: boolean) => value
- }
- }
- }
- }
- };
+ columns: STColumn[] = this.initST();
+ searchSchema: SFSchema = this.initSF();
reqParams = {};
@@ -125,15 +33,19 @@ export class InvoicedListComponent implements OnInit {
ngOnInit(): void {}
+ beforeReq = (requestOptions: STRequestOptions) => {
+ if (this.sf) {
+ this.reqParams = { ...this.sf.value };
+ }
+ return requestOptions;
+ };
+
stChange(e: STChange): void {
switch (e.type) {
case 'checkbox':
this.selectedRows = e.checkbox!;
this.totalCallNo = this.selectedRows.reduce((total, cv) => total + cv.callNo, 0);
break;
- case 'filter':
- this.st.load();
- break;
}
}
@@ -141,26 +53,11 @@ export class InvoicedListComponent implements OnInit {
add(): void {}
- routeTo(item: any) {
- this.router.navigate(['/ticket/invoice-list-detail/1']);
- }
-
- delete(item: any) {
- this.st.removeRow(item);
- }
-
- editInvoice(item: any) {
- const modal = this.nzModalService.create({
- nzTitle: '填写物流/修改物流',
- nzContent: this.logosticsModal,
- nzOnOk: () => {}
- });
- modal.afterClose.subscribe(res => {
- this.st.load();
- });
- }
-
- deletedInvoice(item: any) {
+ deletedInvoice() {
+ if (this.selectedRows?.length <= 0) {
+ this.service.msgSrv.warning('请选择发票');
+ return;
+ }
this.nzModalService.warning({
nzTitle: '确定将所选发票作废?',
nzCancelText: '取消',
@@ -168,6 +65,18 @@ export class InvoicedListComponent implements OnInit {
});
}
+ invoiceHongChong() {
+ if (this.selectedRows?.length <= 0) {
+ this.service.msgSrv.warning('请选择发票');
+ return;
+ }
+ this.nzModalService.warning({
+ nzTitle: '确定将所选发票红冲?',
+ nzCancelText: '取消',
+ nzOnOk: () => {}
+ });
+ }
+
showlogosticsLogs(item: any) {
this.nzModalService.create({
nzTitle: '查看物流',
@@ -192,4 +101,105 @@ export class InvoicedListComponent implements OnInit {
this._$expand = !this._$expand;
this.sf?.setValue('/expand', this._$expand);
}
+
+ private initSF(): SFSchema {
+ return {
+ properties: {
+ expand: {
+ type: 'boolean',
+ ui: {
+ hidden: true
+ }
+ },
+ orderSn: {
+ type: 'string',
+ title: '发票号码',
+ ui: {
+ autocomplete: 'off'
+ }
+ },
+ orderSn2: {
+ type: 'string',
+ title: '申请编号',
+ ui: {
+ autocomplete: 'off'
+ }
+ },
+ createTime: {
+ title: '开票日期',
+ type: 'string',
+ ui: {
+ widget: 'date',
+ mode: 'range',
+ format: 'yyyy-MM-dd'
+ } as SFDateWidgetSchema
+ },
+ receiveName: {
+ type: 'string',
+ title: '购买人',
+ enum: [{ label: '全部', value: '全部' }],
+ ui: {
+ widget: 'select',
+ placeholder: '请选择',
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ }
+ },
+ receiveName2: {
+ type: 'string',
+ title: '网络货运人',
+ enum: [{ label: '全部', value: '全部' }],
+ ui: {
+ widget: 'select',
+ placeholder: '请选择',
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ }
+ }
+ }
+ };
+ }
+
+ private initST(): STColumn[] {
+ return [
+ { title: '', index: 'key', type: 'checkbox' },
+ { title: '发票号码', index: 'no', width: 150 },
+ { title: '申请编号', index: 'callNo', width: 150 },
+ { title: '申请时间', index: 'updatedAt', type: 'date', width: 150 },
+ { title: '发票类型', index: 'callNo', width: 100 },
+ { title: '网络货运人', index: 'callNo', width: 120 },
+ { title: '购买人', index: 'callNo', width: 90 },
+ { title: '订单数', index: 'callNo', width: 90 },
+ { title: '价税合计', index: 'callNo', width: 100 },
+ { title: '金额', index: 'callNo', width: 90 },
+ { title: '税率', index: 'callNo', width: 90 },
+ { title: '税额', index: 'callNo', width: 90 },
+ { title: '开票日期', index: 'updatedAt', type: 'date', width: 150 },
+ {
+ title: '快递信息',
+ render: 'logostics',
+ width: 120,
+ format: item => `顺丰快递6202110012313`
+ },
+ { title: '状态', render: 'logostics', width: 90 },
+ {
+ title: '操作',
+ fixed: 'right',
+ className: 'text-center',
+ width: 110,
+ buttons: [
+ {
+ text: '查看明细',
+ click: item => this.router.navigate(['/ticket/invoice-list/detail/1'])
+ },
+ {
+ text: '查看物流',
+ click: item => this.showlogosticsLogs(item)
+ }
+ ]
+ }
+ ];
+ }
}
diff --git a/src/assets/mocks/menu-data.json b/src/assets/mocks/menu-data.json
index 4a33d723..88846c1d 100644
--- a/src/assets/mocks/menu-data.json
+++ b/src/assets/mocks/menu-data.json
@@ -251,6 +251,10 @@
"icon": "anticon anticon-dashboard",
"group": true,
"children": [
+ {
+ "text": "费用管理",
+ "link": "/financial-management/cost-management"
+ },
{
"text": "货主账户",
"link": "/financial-management/freight-account"
@@ -281,6 +285,18 @@
"text": "提现详情",
"hide": true,
"link": "/financial-management/withdrawals-record/detail/:id"
+ },
+ {
+ "text": "异常入金",
+ "link": "/financial-management/abnormal-gold"
+ },
+ {
+ "text": "支付记录",
+ "link": "/financial-management/payment-record"
+ },
+ {
+ "text": "交易流水",
+ "link": "/financial-management/transaction-flow"
}
]
},