diff --git a/src/app/routes/ticket-management/components/etc-invoiced-list/etc-invoiced-list.component.html b/src/app/routes/ticket-management/components/etc-invoiced-list/etc-invoiced-list.component.html
index 1577aa56..94082590 100644
--- a/src/app/routes/ticket-management/components/etc-invoiced-list/etc-invoiced-list.component.html
+++ b/src/app/routes/ticket-management/components/etc-invoiced-list/etc-invoiced-list.component.html
@@ -1 +1,26 @@
-
etc-invoiced-list works!
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/app/routes/ticket-management/components/etc-invoiced-list/etc-invoiced-list.component.less b/src/app/routes/ticket-management/components/etc-invoiced-list/etc-invoiced-list.component.less
index e69de29b..a3fa49cc 100644
--- a/src/app/routes/ticket-management/components/etc-invoiced-list/etc-invoiced-list.component.less
+++ b/src/app/routes/ticket-management/components/etc-invoiced-list/etc-invoiced-list.component.less
@@ -0,0 +1,13 @@
+:host::ng-deep {
+ .search-box {
+ .ant-card-body {
+ padding-bottom: 18px;
+ }
+ }
+
+ .content-box {
+ .ant-card-body {
+ padding-top: 16px;
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/app/routes/ticket-management/components/etc-invoiced-list/etc-invoiced-list.component.ts b/src/app/routes/ticket-management/components/etc-invoiced-list/etc-invoiced-list.component.ts
index bdf34a94..d7ce70e9 100644
--- a/src/app/routes/ticket-management/components/etc-invoiced-list/etc-invoiced-list.component.ts
+++ b/src/app/routes/ticket-management/components/etc-invoiced-list/etc-invoiced-list.component.ts
@@ -1,4 +1,10 @@
-import { Component, OnInit } from '@angular/core';
+import { Component, OnInit, ViewChild } from '@angular/core';
+import { Router } from '@angular/router';
+import { STComponent, STColumn, STChange } from '@delon/abc/st';
+import { SFComponent, SFSchema } from '@delon/form';
+import { NzModalService } from 'ng-zorro-antd/modal';
+import { TicketService } from '../../services/system.service';
+import { TransactionDetailsComponent } from './transaction-details/transaction-details.component';
@Component({
selector: 'app-etc-invoiced-list',
@@ -6,10 +12,119 @@ import { Component, OnInit } from '@angular/core';
styleUrls: ['./etc-invoiced-list.component.less']
})
export class ETCInvoicedListComponent implements OnInit {
+ url = `/rule?_allow_anonymous=true`;
+ @ViewChild('st', { static: true })
+ st!: STComponent;
+ @ViewChild('sf', { static: false })
+ sf!: SFComponent;
+ columns: STColumn[] = [
+ { title: '运单号', index: 'no' },
+ { title: '开票状态', index: 'callNo' },
+ { title: '业务方', index: 'callNo' },
+ { title: '业务方税号', index: 'callNo' },
+ { title: '开票金额', index: 'callNo' },
+ { title: '发票张数', index: 'callNo' },
+ { title: '申请时间', index: 'updatedAt', type: 'date' },
+ {
+ title: '操作',
+ buttons: [
+ {
+ text: '交易明细',
+ click: item => this.showDetail(item)
+ }
+ ]
+ }
+ ];
+ searchSchema: SFSchema = {
+ properties: {
+ orderSn: {
+ type: 'string',
+ title: '运单号',
+ ui: {
+ autocomplete: 'off'
+ }
+ },
+ receiveName: {
+ type: 'string',
+ title: '开票状态',
+ enum: [
+ { label: '全部', value: '' },
+ { label: '待受理', value: '待受理' },
+ { label: '待开票', value: '待开票' },
+ { label: '开票中', value: '开票中' },
+ { label: '已开票', value: '已开票' },
+ { label: '已撤销', value: '已撤销' },
+ { label: '已拒绝', value: '已拒绝' }
+ ],
+ ui: {
+ widget: 'select',
+ placeholder: '请选择',
+ change: (i: any) => {
+ this.sf.value.receiveName = i;
+ this.sf?.setValue('/receiveName', i);
+ }
+ },
+ default: ''
+ },
+ receiveName2: {
+ type: 'string',
+ title: '业务方',
+ enum: [
+ { label: '全部', value: '' },
+ { label: '待受理', value: '待受理' },
+ { label: '待开票', value: '待开票' },
+ { label: '开票中', value: '开票中' },
+ { label: '已开票', value: '已开票' },
+ { label: '已撤销', value: '已撤销' },
+ { label: '已拒绝', value: '已拒绝' }
+ ],
+ ui: {
+ widget: 'select',
+ placeholder: '请选择',
+ change: (i: any) => {
+ this.sf.value.receiveName = i;
+ this.sf?.setValue('/receiveName', i);
+ }
+ },
+ default: ''
+ }
+ }
+ };
- constructor() { }
+ reqParams = {};
- ngOnInit(): void {
+ constructor(public service: TicketService, private nzModalService: NzModalService, private router: Router) {}
+
+ ngOnInit(): void {}
+
+ stChange(e: STChange): void {
+ switch (e.type) {
+ case 'filter':
+ this.st.load();
+ break;
+ }
}
+ showDetail(item: any) {
+ const modal = this.nzModalService.create({
+ nzTitle: '运单交易明细',
+ nzContent: TransactionDetailsComponent,
+ nzWidth: 800,
+ nzComponentParams: { data: [] },
+ nzOnOk: com => {
+ console.log(com.selectedData);
+ },
+ nzOkText: '导出'
+ });
+ modal.afterClose.subscribe(res => {
+ this.st.load();
+ });
+ }
+
+ /**
+ * 重置表单
+ */
+ resetSF() {
+ this.sf.reset();
+ }
}
diff --git a/src/app/routes/ticket-management/components/etc-invoiced-list/transaction-details/transaction-details.component.html b/src/app/routes/ticket-management/components/etc-invoiced-list/transaction-details/transaction-details.component.html
new file mode 100644
index 00000000..a0704a71
--- /dev/null
+++ b/src/app/routes/ticket-management/components/etc-invoiced-list/transaction-details/transaction-details.component.html
@@ -0,0 +1,16 @@
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/app/routes/ticket-management/components/etc-invoiced-list/transaction-details/transaction-details.component.less b/src/app/routes/ticket-management/components/etc-invoiced-list/transaction-details/transaction-details.component.less
new file mode 100644
index 00000000..e69de29b
diff --git a/src/app/routes/ticket-management/components/etc-invoiced-list/transaction-details/transaction-details.component.ts b/src/app/routes/ticket-management/components/etc-invoiced-list/transaction-details/transaction-details.component.ts
new file mode 100644
index 00000000..c7146f90
--- /dev/null
+++ b/src/app/routes/ticket-management/components/etc-invoiced-list/transaction-details/transaction-details.component.ts
@@ -0,0 +1,84 @@
+import { Component, OnInit, ViewChild } from '@angular/core';
+import { Router } from '@angular/router';
+import { STComponent, STColumn, STChange } from '@delon/abc/st';
+import { SFComponent, SFDateWidgetSchema, SFSchema } from '@delon/form';
+import { NzModalService } from 'ng-zorro-antd/modal';
+import { TicketService } from '../../../services/system.service';
+
+@Component({
+ selector: 'app-transaction-details',
+ templateUrl: './transaction-details.component.html',
+ styleUrls: ['./transaction-details.component.less']
+})
+export class TransactionDetailsComponent implements OnInit {
+ data = [];
+ selectedData = [];
+ url = `/rule?_allow_anonymous=true`;
+ @ViewChild('st', { static: true })
+ st!: STComponent;
+ @ViewChild('sf', { static: false })
+ sf!: SFComponent;
+ columns: STColumn[] = [
+ { title: '交易id', index: 'no' },
+ { title: '交易流水号', index: 'callNo' },
+ { title: '交易金额', index: 'callNo' },
+ { title: '开票状态', index: 'callNo' },
+ { title: '交易时间', index: 'updatedAt', type: 'date' }
+ ];
+ searchSchema: SFSchema = {
+ properties: {
+ receiveName: {
+ type: 'string',
+ title: '开票状态',
+ enum: [
+ { label: '全部', value: '' },
+ { label: '待受理', value: '待受理' },
+ { label: '待开票', value: '待开票' },
+ { label: '开票中', value: '开票中' },
+ { label: '已开票', value: '已开票' },
+ { label: '已撤销', value: '已撤销' },
+ { label: '已拒绝', value: '已拒绝' }
+ ],
+ ui: {
+ widget: 'select',
+ placeholder: '请选择',
+ change: (i: any) => {
+ this.sf.value.receiveName = i;
+ this.sf?.setValue('/receiveName', i);
+ }
+ },
+ default: ''
+ },
+ createTime: {
+ title: '交易时间',
+ type: 'string',
+ ui: {
+ widget: 'date',
+ mode: 'range',
+ format: 'yyyy-MM-dd'
+ } as SFDateWidgetSchema
+ }
+ }
+ };
+
+ reqParams = {};
+
+ constructor(public service: TicketService, private nzModalService: NzModalService, private router: Router) {}
+
+ ngOnInit(): void {}
+
+ stChange(e: STChange): void {
+ switch (e.type) {
+ case 'filter':
+ this.st.load();
+ break;
+ }
+ }
+
+ /**
+ * 重置表单
+ */
+ resetSF() {
+ this.sf.reset();
+ }
+}
diff --git a/src/app/routes/ticket-management/components/etc-invoiced-logs/etc-invoiced-logs.component.html b/src/app/routes/ticket-management/components/etc-invoiced-logs/etc-invoiced-logs.component.html
index 5792d49c..c2ed8caa 100644
--- a/src/app/routes/ticket-management/components/etc-invoiced-logs/etc-invoiced-logs.component.html
+++ b/src/app/routes/ticket-management/components/etc-invoiced-logs/etc-invoiced-logs.component.html
@@ -1 +1,31 @@
-etc-invoiced-logs works!
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/app/routes/ticket-management/components/etc-invoiced-logs/etc-invoiced-logs.component.less b/src/app/routes/ticket-management/components/etc-invoiced-logs/etc-invoiced-logs.component.less
index e69de29b..3579aa56 100644
--- a/src/app/routes/ticket-management/components/etc-invoiced-logs/etc-invoiced-logs.component.less
+++ b/src/app/routes/ticket-management/components/etc-invoiced-logs/etc-invoiced-logs.component.less
@@ -0,0 +1,34 @@
+: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 {
+ margin-top: -40px;
+ }
+
+}
\ No newline at end of file
diff --git a/src/app/routes/ticket-management/components/etc-invoiced-logs/etc-invoiced-logs.component.ts b/src/app/routes/ticket-management/components/etc-invoiced-logs/etc-invoiced-logs.component.ts
index 9164381f..003971f1 100644
--- a/src/app/routes/ticket-management/components/etc-invoiced-logs/etc-invoiced-logs.component.ts
+++ b/src/app/routes/ticket-management/components/etc-invoiced-logs/etc-invoiced-logs.component.ts
@@ -1,4 +1,9 @@
-import { Component, OnInit } from '@angular/core';
+import { Component, OnInit, ViewChild } from '@angular/core';
+import { Router } from '@angular/router';
+import { STComponent, STColumn, STChange } from '@delon/abc/st';
+import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form';
+import { NzModalService } from 'ng-zorro-antd/modal';
+import { TicketService } from '../../services/system.service';
@Component({
selector: 'app-etc-invoiced-logs',
@@ -6,10 +11,168 @@ import { Component, OnInit } from '@angular/core';
styleUrls: ['./etc-invoiced-logs.component.less']
})
export class ETCInvoicedLogsComponent implements OnInit {
+ url = `/rule?_allow_anonymous=true`;
+ @ViewChild('st', { static: true })
+ st!: STComponent;
+ @ViewChild('sf', { static: false })
+ sf!: SFComponent;
+ columns: STColumn[] = [
+ { title: '发票号码', index: 'no' },
+ { title: '发票代码', index: 'callNo' },
+ { title: '运单号', index: 'callNo' },
+ { title: '车牌号', index: 'callNo' },
+ { title: '入站口', index: 'callNo' },
+ { title: '出站口', index: 'callNo' },
+ { title: '里程(km)', index: 'callNo' },
+ { title: '交易id', index: 'callNo' },
+ { title: '交易金额(元)', index: 'callNo' },
+ { title: '发票金额(元)', index: 'callNo' },
+ { title: '税率', index: 'callNo' },
+ { title: '税额(元)', index: 'callNo' },
+ { title: '价税合计(元)', index: 'callNo' },
+ { title: '交易时间', index: 'updatedAt', type: 'date' },
+ { title: '开票日期', index: 'updatedAt', type: 'date' },
+ { title: '购买方', index: 'callNo' },
+ { title: '购方税号', index: 'callNo' },
+ { title: '销售方', index: 'callNo' },
+ { title: '销方税号', index: 'callNo' }
+ ];
+ searchSchema: SFSchema = {
+ properties: {
+ expand: {
+ type: 'boolean',
+ ui: {
+ hidden: true
+ }
+ },
+ orderSn: {
+ type: 'string',
+ title: '发票号码',
+ ui: {
+ placeholder: '请输入',
+ autocomplete: 'off'
+ }
+ },
+ orderSn1: {
+ type: 'string',
+ title: '运单号',
+ ui: {
+ placeholder: '请输入',
+ autocomplete: 'off'
+ }
+ },
+ orderSn2: {
+ type: 'string',
+ title: '车牌号',
+ ui: {
+ placeholder: '请输入',
+ autocomplete: 'off'
+ }
+ },
+ createTime: {
+ title: '交易时间',
+ type: 'string',
+ ui: {
+ widget: 'date',
+ mode: 'range',
+ format: 'yyyy-MM-dd',
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ } as SFDateWidgetSchema
+ },
+ createTime2: {
+ title: '开票日期',
+ type: 'string',
+ ui: {
+ widget: 'date',
+ mode: 'range',
+ format: 'yyyy-MM-dd',
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ } as SFDateWidgetSchema
+ },
+ receiveName: {
+ type: 'string',
+ title: '购买方',
+ enum: [
+ { label: '全部', value: '全部' },
+ { label: '企业认证审核', value: '企业认证审核' },
+ { 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: '全部' },
+ { label: '企业认证审核', value: '企业认证审核' },
+ { label: '企业管理员审核', value: '企业管理员审核' }
+ ],
+ ui: {
+ widget: 'select',
+ placeholder: '请选择',
+ change: (i: any) => {
+ this.sf.value.receiveName2 = i;
+ this.sf?.setValue('/receiveName2', i);
+ },
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ }
+ }
+ }
+ };
- constructor() { }
+ reqParams = {};
- ngOnInit(): void {
+ _$expand = false;
+
+ constructor(public service: TicketService, private nzModalService: NzModalService, private router: Router) {}
+
+ ngOnInit(): void {}
+
+ stChange(e: STChange): void {
+ switch (e.type) {
+ case 'filter':
+ this.st.load();
+ break;
+ }
}
+ approval(): void {}
+
+ add(): void {}
+
+ routeTo(item: any) {
+ this.router.navigate(['/ticket/invoice-requested-detail/1']);
+ }
+
+ /**
+ * 重置表单
+ */
+ resetSF() {
+ this.sf.reset();
+ this._$expand = false;
+ }
+
+ /**
+ * 伸缩查询条件
+ */
+ expandToggle() {
+ this._$expand = !this._$expand;
+ this.sf?.setValue('/expand', this._$expand);
+ }
}
diff --git a/src/app/routes/ticket-management/components/etc-invoiced-requested/etc-invoiced-requested.component.html b/src/app/routes/ticket-management/components/etc-invoiced-requested/etc-invoiced-requested.component.html
index fc8980c0..4bb31236 100644
--- a/src/app/routes/ticket-management/components/etc-invoiced-requested/etc-invoiced-requested.component.html
+++ b/src/app/routes/ticket-management/components/etc-invoiced-requested/etc-invoiced-requested.component.html
@@ -1 +1,52 @@
-etc-invoiced-requested works!
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/app/routes/ticket-management/components/etc-invoiced-requested/etc-invoiced-requested.component.less b/src/app/routes/ticket-management/components/etc-invoiced-requested/etc-invoiced-requested.component.less
index e69de29b..3579aa56 100644
--- a/src/app/routes/ticket-management/components/etc-invoiced-requested/etc-invoiced-requested.component.less
+++ b/src/app/routes/ticket-management/components/etc-invoiced-requested/etc-invoiced-requested.component.less
@@ -0,0 +1,34 @@
+: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 {
+ margin-top: -40px;
+ }
+
+}
\ No newline at end of file
diff --git a/src/app/routes/ticket-management/components/etc-invoiced-requested/etc-invoiced-requested.component.ts b/src/app/routes/ticket-management/components/etc-invoiced-requested/etc-invoiced-requested.component.ts
index 4524863a..88e0da1d 100644
--- a/src/app/routes/ticket-management/components/etc-invoiced-requested/etc-invoiced-requested.component.ts
+++ b/src/app/routes/ticket-management/components/etc-invoiced-requested/etc-invoiced-requested.component.ts
@@ -1,4 +1,9 @@
-import { Component, OnInit } from '@angular/core';
+import { Component, OnInit, ViewChild } from '@angular/core';
+import { Router } from '@angular/router';
+import { STComponent, STColumn, STChange } from '@delon/abc/st';
+import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form';
+import { NzModalService } from 'ng-zorro-antd/modal';
+import { TicketService } from '../../services/system.service';
@Component({
selector: 'app-etc-invoiced-requested',
@@ -6,10 +11,206 @@ import { Component, OnInit } from '@angular/core';
styleUrls: ['./etc-invoiced-requested.component.less']
})
export class ETCInvoicedRequestedComponent implements OnInit {
+ url = `/rule?_allow_anonymous=true`;
+ @ViewChild('st', { static: true })
+ st!: STComponent;
+ @ViewChild('sf', { static: false })
+ sf!: SFComponent;
+ @ViewChild('auditModal', { static: false })
+ auditModal!: 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: 'updatedAt', type: 'date' },
+ { title: '提货时间', index: 'updatedAt', type: 'date' },
+ { title: '卸货时间', index: 'updatedAt', type: 'date' },
+ { title: '签收时间', index: 'updatedAt', type: 'date' },
+ ];
+ searchSchema: SFSchema = {
+ properties: {
+ expand: {
+ type: 'boolean',
+ ui: {
+ hidden: true
+ }
+ },
+ orderSn: {
+ type: 'string',
+ title: '运单号',
+ ui: {
+ autocomplete: 'off',
+ placeholder: '请输入'
+ }
+ },
+ orderSn1: {
+ type: 'string',
+ title: '司机',
+ ui: {
+ autocomplete: 'off',
+ placeholder: '姓名/手机'
+ }
+ },
+ orderSn2: {
+ type: 'string',
+ title: '车牌号',
+ ui: {
+ autocomplete: 'off',
+ placeholder: '请输入'
+ }
+ },
+ orderS3: {
+ type: 'string',
+ title: '卸货地',
+ ui: {
+ autocomplete: 'off',
+ placeholder: '请选择',
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ }
+ },
+ orderSn4: {
+ type: 'string',
+ title: '装货地',
+ ui: {
+ autocomplete: 'off',
+ placeholder: '请选择',
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ }
+ },
+ orderSn5: {
+ type: 'string',
+ title: '托运人',
+ enum: [
+ { label: '全部', value: '全部' },
+ { label: '企业认证审核', value: '企业认证审核' },
+ { label: '企业管理员审核', value: '企业管理员审核' }
+ ],
+ ui: {
+ widget: 'select',
+ placeholder: '请选择',
+ change: (i: any) => {
+ this.sf.value.receiveName = i;
+ this.sf?.setValue('/receiveName', i);
+ },
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ }
+ },
+ receiveName: {
+ type: 'string',
+ title: '无车承运人',
+ enum: [
+ { label: '全部', value: '全部' },
+ { label: '企业认证审核', value: '企业认证审核' },
+ { label: '企业管理员审核', value: '企业管理员审核' }
+ ],
+ ui: {
+ widget: 'select',
+ placeholder: '请选择',
+ change: (i: any) => {
+ this.sf.value.receiveName = i;
+ this.sf?.setValue('/receiveName', i);
+ },
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ }
+ }
+ }
+ };
- constructor() { }
+ reqParams = {};
- ngOnInit(): void {
+ _$expand = false;
+
+ selectedRows: any[] = [];
+ constructor(public service: TicketService, private nzModalService: NzModalService, private router: Router) {}
+
+ ngOnInit(): void {}
+
+ stChange(e: STChange): void {
+ switch (e.type) {
+ case 'checkbox':
+ this.selectedRows = e.checkbox!;
+ break;
+ case 'filter':
+ this.st.load();
+ break;
+ }
}
+ approval(): void {}
+
+ add(): void {}
+
+ routeTo(item: any) {
+ this.router.navigate(['/ticket/invoice-requested-detail/1']);
+ }
+
+ auditAction(item: any) {
+ const modal = this.nzModalService.create({
+ nzTitle: '审核',
+ nzContent: this.auditModal,
+ nzFooter: [
+ {
+ label: '拒绝',
+ type: 'default',
+ onClick: () => {
+ modal.destroy();
+ }
+ },
+ {
+ label: '通过',
+ type: 'primary',
+ onClick: () => {
+ modal.destroy();
+ }
+ }
+ ]
+ });
+ modal.afterClose.subscribe(res => {
+ this.st.load();
+ });
+ }
+
+ showReason(item: any) {
+ const modal = this.nzModalService.create({
+ nzTitle: '查看原因',
+ nzContent: '运单数据异常,暂时无法开票,请联系客服400-xxxx-xxxx',
+ 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);
+ }
}
diff --git a/src/app/routes/ticket-management/components/invoice-requested/invoice-requested-detail/invoice-requested-detail.component.html b/src/app/routes/ticket-management/components/invoice-requested/invoice-requested-detail/invoice-requested-detail.component.html
new file mode 100644
index 00000000..b146f52e
--- /dev/null
+++ b/src/app/routes/ticket-management/components/invoice-requested/invoice-requested-detail/invoice-requested-detail.component.html
@@ -0,0 +1,63 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/app/routes/ticket-management/components/invoice-requested/invoice-requested-detail/invoice-requested-detail.component.less b/src/app/routes/ticket-management/components/invoice-requested/invoice-requested-detail/invoice-requested-detail.component.less
new file mode 100644
index 00000000..a3fa49cc
--- /dev/null
+++ b/src/app/routes/ticket-management/components/invoice-requested/invoice-requested-detail/invoice-requested-detail.component.less
@@ -0,0 +1,13 @@
+:host::ng-deep {
+ .search-box {
+ .ant-card-body {
+ padding-bottom: 18px;
+ }
+ }
+
+ .content-box {
+ .ant-card-body {
+ padding-top: 16px;
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/app/routes/ticket-management/components/invoice-requested/invoice-requested-detail/invoice-requested-detail.component.ts b/src/app/routes/ticket-management/components/invoice-requested/invoice-requested-detail/invoice-requested-detail.component.ts
new file mode 100644
index 00000000..b04d7e0c
--- /dev/null
+++ b/src/app/routes/ticket-management/components/invoice-requested/invoice-requested-detail/invoice-requested-detail.component.ts
@@ -0,0 +1,101 @@
+import { Component, OnInit, ViewChild } from '@angular/core';
+import { Router } from '@angular/router';
+import { STComponent, STColumn, STChange } from '@delon/abc/st';
+import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form';
+import { NzModalService } from 'ng-zorro-antd/modal';
+import { TicketService } from '../../../services/system.service';
+
+@Component({
+ selector: 'app-invoice-requested-detail',
+ templateUrl: './invoice-requested-detail.component.html',
+ styleUrls: ['./invoice-requested-detail.component.less']
+})
+export class InvoiceRequestedDetailComponent implements OnInit {
+ url = `/rule?_allow_anonymous=true`;
+ @ViewChild('st', { static: true })
+ st!: STComponent;
+ @ViewChild('sf', { static: false })
+ sf!: SFComponent;
+ 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' }
+ ];
+ searchSchema: SFSchema = {
+ properties: {
+ orderSn: {
+ type: 'string',
+ title: '运单号',
+ ui: {
+ autocomplete: 'off'
+ }
+ },
+ receiveName: {
+ type: 'string',
+ title: '开票状态',
+ enum: [
+ { label: '全部', value: '' },
+ { label: '待受理', value: '待受理' },
+ { label: '待开票', value: '待开票' },
+ { label: '开票中', value: '开票中' },
+ { label: '已开票', value: '已开票' },
+ { label: '已撤销', value: '已撤销' },
+ { label: '已拒绝', value: '已拒绝' }
+ ],
+ ui: {
+ widget: 'select',
+ placeholder: '请选择',
+ change: (i: any) => {
+ this.sf.value.receiveName = i;
+ this.sf?.setValue('/receiveName', i);
+ }
+ },
+ default: ''
+ },
+ orderSn2: {
+ type: 'string',
+ title: '发票号码',
+ ui: {
+ autocomplete: 'off'
+ }
+ }
+ }
+ };
+
+ reqParams = {};
+
+ selectedRows: any[] = [];
+ totalCallNo = 0;
+ constructor(public service: TicketService, private nzModalService: NzModalService, private router: Router) {}
+
+ ngOnInit(): void {}
+
+ 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;
+ }
+ }
+
+ goBack() {
+ history.go(-1);
+ }
+
+ /**
+ * 重置表单
+ */
+ resetSF() {
+ this.sf.reset();
+ }
+}
diff --git a/src/app/routes/ticket-management/components/invoice-requested/invoice-requested.component.html b/src/app/routes/ticket-management/components/invoice-requested/invoice-requested.component.html
index 3a6aad34..249c1c37 100644
--- a/src/app/routes/ticket-management/components/invoice-requested/invoice-requested.component.html
+++ b/src/app/routes/ticket-management/components/invoice-requested/invoice-requested.component.html
@@ -1 +1,57 @@
-invoice-requested works!
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/app/routes/ticket-management/components/invoice-requested/invoice-requested.component.less b/src/app/routes/ticket-management/components/invoice-requested/invoice-requested.component.less
index e69de29b..3579aa56 100644
--- a/src/app/routes/ticket-management/components/invoice-requested/invoice-requested.component.less
+++ b/src/app/routes/ticket-management/components/invoice-requested/invoice-requested.component.less
@@ -0,0 +1,34 @@
+: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 {
+ margin-top: -40px;
+ }
+
+}
\ No newline at end of file
diff --git a/src/app/routes/ticket-management/components/invoice-requested/invoice-requested.component.ts b/src/app/routes/ticket-management/components/invoice-requested/invoice-requested.component.ts
index 6a46f111..10d36072 100644
--- a/src/app/routes/ticket-management/components/invoice-requested/invoice-requested.component.ts
+++ b/src/app/routes/ticket-management/components/invoice-requested/invoice-requested.component.ts
@@ -1,4 +1,10 @@
-import { Component, OnInit } from '@angular/core';
+import { Component, OnInit, ViewChild } from '@angular/core';
+import { Router } from '@angular/router';
+import { STComponent, STColumn, STChange } from '@delon/abc/st';
+import { SFComponent, SFSchema, SFDateWidgetSchema, SFUISchema } from '@delon/form';
+import { NzMessageService } from 'ng-zorro-antd/message';
+import { NzModalService } from 'ng-zorro-antd/modal';
+import { TicketService } from '../../services/system.service';
@Component({
selector: 'app-invoice-requested',
@@ -6,10 +12,218 @@ import { Component, OnInit } from '@angular/core';
styleUrls: ['./invoice-requested.component.less']
})
export class InvoiceRequestedComponent implements OnInit {
+ url = `/rule?_allow_anonymous=true`;
+ @ViewChild('st', { static: true })
+ st!: STComponent;
+ @ViewChild('sf', { static: false })
+ sf!: SFComponent;
+ @ViewChild('auditModal', { static: false })
+ auditModal!: any;
+ columns: STColumn[] = [
+ { title: '', index: 'key', type: 'checkbox' },
+ { title: '申请编号', index: 'no' },
+ { title: '申请时间', index: 'updatedAt', type: 'date' },
+ { title: '处理进度', index: 'callNo' },
+ { title: '托运人', index: 'callNo' },
+ { title: '开票方', index: 'callNo' },
+ { title: '运单数', index: 'callNo' },
+ { title: '开票金额', index: 'callNo' },
+ { title: '发票张数', index: 'callNo' },
+ { title: '收件人', index: 'callNo' },
+ { title: '联系电话', index: 'callNo' },
+ { title: '收件地址', index: 'callNo' },
+ { title: '备注', index: 'callNo' },
+ {
+ title: '操作',
+ buttons: [
+ {
+ text: '审核',
+ click: item => this.auditAction(item)
+ },
+ {
+ text: '去开票',
+ click: item => this.routeTo(item)
+ },
+ {
+ text: '查看原因',
+ click: item => this.showReason(item)
+ },
+ {
+ text: '订单明细',
+ click: item => this.routeTo(item)
+ }
+ ]
+ }
+ ];
+ searchSchema: SFSchema = {
+ properties: {
+ expand: {
+ type: 'boolean',
+ ui: {
+ hidden: true
+ }
+ },
+ orderSn: {
+ 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: '全部' },
+ { label: '企业认证审核', value: '企业认证审核' },
+ { label: '企业管理员审核', value: '企业管理员审核' }
+ ],
+ ui: {
+ widget: 'select',
+ placeholder: '请选择',
+ change: (i: any) => {
+ this.sf.value.receiveName = i;
+ this.sf?.setValue('/receiveName', i);
+ }
+ }
+ },
+ receiveName2: {
+ type: 'string',
+ title: '托运人',
+ enum: [
+ { label: '全部', value: '全部' },
+ { label: '企业认证审核', value: '企业认证审核' },
+ { label: '企业管理员审核', value: '企业管理员审核' }
+ ],
+ ui: {
+ widget: 'select',
+ placeholder: '请选择',
+ change: (i: any) => {
+ this.sf.value.receiveName2 = i;
+ this.sf?.setValue('/receiveName2', i);
+ },
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ }
+ },
+ receiveName3: {
+ type: 'string',
+ title: '开票方',
+ enum: [
+ { label: '全部', value: '全部' },
+ { label: '企业认证审核', value: '企业认证审核' },
+ { label: '企业管理员审核', value: '企业管理员审核' }
+ ],
+ ui: {
+ widget: 'select',
+ placeholder: '请选择',
+ change: (i: any) => {
+ this.sf.value.receiveName3 = i;
+ this.sf?.setValue('/receiveName3', i);
+ },
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ }
+ }
+ }
+ };
- constructor() { }
+ reqParams = {};
- ngOnInit(): void {
+ _$expand = false;
+
+ selectedRows: any[] = [];
+ totalCallNo = 0;
+ constructor(public service: TicketService, private nzModalService: NzModalService, private router: Router) {}
+
+ ngOnInit(): void {}
+
+ 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;
+ }
}
+ approval(): void {}
+
+ add(): void {}
+
+ routeTo(item: any) {
+ this.router.navigate(['/ticket/invoice-requested-detail/1']);
+ }
+
+ auditAction(item: any) {
+ const modal = this.nzModalService.create({
+ nzTitle: '审核',
+ nzContent: this.auditModal,
+ nzFooter: [
+ {
+ label: '拒绝',
+ type: 'default',
+ onClick: () => {
+ modal.destroy();
+ }
+ },
+ {
+ label: '通过',
+ type: 'primary',
+ onClick: () => {
+ modal.destroy();
+ }
+ }
+ ]
+ });
+ modal.afterClose.subscribe(res => {
+ this.st.load();
+ });
+ }
+
+ showReason(item: any) {
+ const modal = this.nzModalService.create({
+ nzTitle: '查看原因',
+ nzContent: '运单数据异常,暂时无法开票,请联系客服400-xxxx-xxxx',
+ 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);
+ }
}
diff --git a/src/app/routes/ticket-management/components/invoiced-list/invoiced-list-detail/invoiced-list-detail.component.html b/src/app/routes/ticket-management/components/invoiced-list/invoiced-list-detail/invoiced-list-detail.component.html
new file mode 100644
index 00000000..4e30f271
--- /dev/null
+++ b/src/app/routes/ticket-management/components/invoiced-list/invoiced-list-detail/invoiced-list-detail.component.html
@@ -0,0 +1,61 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/app/routes/ticket-management/components/invoiced-list/invoiced-list-detail/invoiced-list-detail.component.less b/src/app/routes/ticket-management/components/invoiced-list/invoiced-list-detail/invoiced-list-detail.component.less
new file mode 100644
index 00000000..6dee2fec
--- /dev/null
+++ b/src/app/routes/ticket-management/components/invoiced-list/invoiced-list-detail/invoiced-list-detail.component.less
@@ -0,0 +1,24 @@
+:host::ng-deep {
+ .search-box {
+ .ant-card-body {
+ padding-bottom: 18px;
+ }
+ }
+
+ .content-box {
+ .ant-card-body {
+ padding-top: 16px;
+ }
+ }
+}
+
+.expend-options {
+ margin-top: 0px;
+}
+
+@media (min-width: 990px) {
+ .expend-options {
+ margin-top: -40px;
+ }
+
+}
\ No newline at end of file
diff --git a/src/app/routes/ticket-management/components/invoiced-list/invoiced-list-detail/invoiced-list-detail.component.ts b/src/app/routes/ticket-management/components/invoiced-list/invoiced-list-detail/invoiced-list-detail.component.ts
new file mode 100644
index 00000000..26596abd
--- /dev/null
+++ b/src/app/routes/ticket-management/components/invoiced-list/invoiced-list-detail/invoiced-list-detail.component.ts
@@ -0,0 +1,121 @@
+import { Component, OnInit, ViewChild } from '@angular/core';
+import { Router } from '@angular/router';
+import { STComponent, STColumn, STChange } from '@delon/abc/st';
+import { SFComponent, SFSchema } from '@delon/form';
+import { NzModalService } from 'ng-zorro-antd/modal';
+import { TicketService } from '../../../services/system.service';
+
+@Component({
+ selector: 'app-invoiced-list-detail',
+ templateUrl: './invoiced-list-detail.component.html',
+ styleUrls: ['./invoiced-list-detail.component.less']
+})
+export class InvoicedListDetailComponent implements OnInit {
+ url = `/rule?_allow_anonymous=true`;
+ @ViewChild('st', { static: true })
+ st!: STComponent;
+ @ViewChild('sf', { static: false })
+ sf!: SFComponent;
+ columns: STColumn[] = [
+ { title: '订单号', index: 'no' },
+ { title: '外部订单号', index: 'callNo' },
+ { title: '装货地', index: 'callNo' },
+ { title: '卸货地', index: 'callNo' },
+ { title: '货物名称', index: 'callNo' },
+ { title: '重量/体积', index: 'callNo' },
+ { title: '开票金额', index: 'callNo' },
+ { title: '总费用', index: 'callNo' },
+ { title: '基础运费', index: 'callNo' },
+ { title: '附加费', index: 'callNo' },
+ ];
+ searchSchema: SFSchema = {
+ properties: {
+ expand: {
+ type: 'boolean',
+ ui: {
+ hidden: true
+ }
+ },
+ orderSn: {
+ type: 'string',
+ title: '订单号',
+ ui: {
+ autocomplete: 'off'
+ }
+ },
+ orderSn2: {
+ type: 'string',
+ title: '外部订单号',
+ ui: {
+ autocomplete: 'off'
+ }
+ },
+ orderSn3: {
+ type: 'string',
+ title: '发票号码',
+ ui: {
+ autocomplete: 'off'
+ }
+ },
+ receiveName: {
+ type: 'string',
+ title: '开票状态',
+ enum: [
+ { label: '全部', value: '' },
+ { label: '待受理', value: '待受理' },
+ { label: '待开票', value: '待开票' },
+ { label: '开票中', value: '开票中' },
+ { label: '已开票', value: '已开票' },
+ { label: '已撤销', value: '已撤销' },
+ { label: '已拒绝', value: '已拒绝' }
+ ],
+ ui: {
+ widget: 'select',
+ placeholder: '请选择',
+ change: (i: any) => {
+ this.sf.value.receiveName = i;
+ this.sf?.setValue('/receiveName', i);
+ },
+ visibleIf: {
+ expand: (value: boolean) => value
+ }
+ },
+ default: ''
+ }
+ }
+ };
+
+ reqParams = {};
+ _$expand = false;
+ constructor(public service: TicketService, private nzModalService: NzModalService, private router: Router) {}
+
+ ngOnInit(): void {}
+
+ stChange(e: STChange): void {
+ switch (e.type) {
+ case 'filter':
+ this.st.load();
+ break;
+ }
+ }
+
+ goBack() {
+ history.go(-1);
+ }
+
+ /**
+ * 重置表单
+ */
+ resetSF() {
+ this.sf.reset();
+ this._$expand = false;
+ }
+
+ /**
+ * 伸缩查询条件
+ */
+ expandToggle() {
+ this._$expand = !this._$expand;
+ this.sf?.setValue('/expand', this._$expand);
+ }
+}
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 fce28939..9e63c5e5 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
@@ -1 +1,72 @@
-invoiced-list works!
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{item.callNo}}
+ 查看物流
+
+
+
+
+
+
+
+
+
+
+
+ 顺丰快递:SF123456789
+ 已签收
+
+
+
\ No newline at end of file
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 e69de29b..55b8191b 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
@@ -0,0 +1,30 @@
+:host::ng-deep {
+ .search-box {
+ .ant-card-body {
+ padding-bottom: 18px;
+ }
+ }
+
+ .content-box {
+ .ant-card-body {
+ padding-top: 16px;
+ }
+ }
+
+ nz-range-picker {
+ width: 100%;
+ }
+
+}
+
+.expend-options {
+ margin-top: 0px;
+}
+
+
+@media (min-width: 1200px) {
+ .expend-options {
+ margin-top: -40px;
+ }
+
+}
\ No newline at end of file
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 e9697bdd..cf16b366 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,4 +1,9 @@
-import { Component, OnInit } from '@angular/core';
+import { Component, OnInit, ViewChild } from '@angular/core';
+import { Router } from '@angular/router';
+import { STComponent, STColumn, STChange } from '@delon/abc/st';
+import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form';
+import { NzModalService } from 'ng-zorro-antd/modal';
+import { TicketService } from '../../services/system.service';
@Component({
selector: 'app-invoiced-list',
@@ -6,10 +11,185 @@ import { Component, OnInit } from '@angular/core';
styleUrls: ['./invoiced-list.component.less']
})
export class InvoicedListComponent implements OnInit {
+ url = `/rule?_allow_anonymous=true`;
+ @ViewChild('st', { static: true })
+ st!: STComponent;
+ @ViewChild('sf', { static: false })
+ sf!: SFComponent;
+ @ViewChild('logosticsModal', { static: false })
+ 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
+ }
+ }
+ }
+ }
+ };
- constructor() { }
+ reqParams = {};
- ngOnInit(): void {
+ _$expand = false;
+
+ selectedRows: any[] = [];
+ totalCallNo = 0;
+ constructor(public service: TicketService, private nzModalService: NzModalService, private router: Router) {}
+
+ ngOnInit(): void {}
+
+ 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;
+ }
}
+ approval(): void {}
+
+ 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) {
+ this.nzModalService.warning({
+ nzTitle: '确定将所选发票作废?',
+ nzCancelText: '取消',
+ nzOnOk: () => {}
+ });
+ }
+
+ showlogosticsLogs(item: any) {
+ this.nzModalService.create({
+ nzTitle: '查看物流',
+ nzWidth: 600,
+ nzContent: this.logosticsLogsModal,
+ nzFooter: []
+ });
+ }
+
+ /**
+ * 重置表单
+ */
+ resetSF() {
+ this.sf.reset();
+ this._$expand = false;
+ }
+
+ /**
+ * 伸缩查询条件
+ */
+ expandToggle() {
+ this._$expand = !this._$expand;
+ this.sf?.setValue('/expand', this._$expand);
+ }
}
diff --git a/src/app/routes/ticket-management/ticket-management-routing.module.ts b/src/app/routes/ticket-management/ticket-management-routing.module.ts
index a1e0c8ac..470d70af 100644
--- a/src/app/routes/ticket-management/ticket-management-routing.module.ts
+++ b/src/app/routes/ticket-management/ticket-management-routing.module.ts
@@ -4,12 +4,16 @@ import { ETCBlacklistComponent } from './components/etc-blacklist/etc-blacklist.
import { ETCInvoicedListComponent } from './components/etc-invoiced-list/etc-invoiced-list.component';
import { ETCInvoicedLogsComponent } from './components/etc-invoiced-logs/etc-invoiced-logs.component';
import { ETCInvoicedRequestedComponent } from './components/etc-invoiced-requested/etc-invoiced-requested.component';
+import { InvoiceRequestedDetailComponent } from './components/invoice-requested/invoice-requested-detail/invoice-requested-detail.component';
import { InvoiceRequestedComponent } from './components/invoice-requested/invoice-requested.component';
+import { InvoicedListDetailComponent } from './components/invoiced-list/invoiced-list-detail/invoiced-list-detail.component';
import { InvoicedListComponent } from './components/invoiced-list/invoiced-list.component';
const routes: Routes = [
{ path: 'invoice-requested', component: InvoiceRequestedComponent },
+ { path: 'invoice-requested-detail/:id', component: InvoiceRequestedDetailComponent },
{ path: 'invoice-list', component: InvoicedListComponent },
+ { path: 'invoice-list-detail/:id', component: InvoicedListDetailComponent },
{ path: 'etc-invoice-requested', component: ETCInvoicedRequestedComponent },
{ path: 'etc-invoice-list', component: ETCInvoicedListComponent },
{ path: 'etc-invoiced-logs', component: ETCInvoicedLogsComponent },
diff --git a/src/app/routes/ticket-management/ticket-management.module.ts b/src/app/routes/ticket-management/ticket-management.module.ts
index 6960085d..fb64abba 100644
--- a/src/app/routes/ticket-management/ticket-management.module.ts
+++ b/src/app/routes/ticket-management/ticket-management.module.ts
@@ -8,6 +8,9 @@ import { ETCInvoicedLogsComponent } from './components/etc-invoiced-logs/etc-inv
import { ETCBlacklistComponent } from './components/etc-blacklist/etc-blacklist.component';
import { InvoicedListComponent } from './components/invoiced-list/invoiced-list.component';
import { InvoiceRequestedComponent } from './components/invoice-requested/invoice-requested.component';
+import { InvoiceRequestedDetailComponent } from './components/invoice-requested/invoice-requested-detail/invoice-requested-detail.component';
+import { InvoicedListDetailComponent } from './components/invoiced-list/invoiced-list-detail/invoiced-list-detail.component';
+import { TransactionDetailsComponent } from './components/etc-invoiced-list/transaction-details/transaction-details.component';
const COMPONENTS: any = [
ETCInvoicedListComponent,
@@ -15,9 +18,11 @@ const COMPONENTS: any = [
ETCInvoicedLogsComponent,
ETCBlacklistComponent,
InvoiceRequestedComponent,
- InvoicedListComponent
+ InvoicedListComponent,
+ InvoiceRequestedDetailComponent,
+ InvoicedListDetailComponent
];
-const NOTROUTECOMPONENTS: any = [];
+const NOTROUTECOMPONENTS: any = [TransactionDetailsComponent];
@NgModule({
declarations: [...COMPONENTS, ...NOTROUTECOMPONENTS],
imports: [CommonModule, TicketManagementRoutingModule, SharedModule]
diff --git a/src/app/shared/components/logistics-time-line/logistics-time-line.component.html b/src/app/shared/components/logistics-time-line/logistics-time-line.component.html
new file mode 100644
index 00000000..34f96ff9
--- /dev/null
+++ b/src/app/shared/components/logistics-time-line/logistics-time-line.component.html
@@ -0,0 +1,6 @@
+
+ 快件已签收
+ 正在派送中,请您准备签收(派件人:吴彦祖,联系电话:13811223133)
+ 快件已到【深圳市龙岗区配送中心】扫描员是【张三】
+ 【顺丰快递】的收件员已揽件
+
\ No newline at end of file
diff --git a/src/app/shared/components/logistics-time-line/logistics-time-line.component.less b/src/app/shared/components/logistics-time-line/logistics-time-line.component.less
new file mode 100644
index 00000000..36f874bc
--- /dev/null
+++ b/src/app/shared/components/logistics-time-line/logistics-time-line.component.less
@@ -0,0 +1,28 @@
+:host::ng-deep {
+
+ .ant-timeline.ant-timeline-label .ant-timeline-item-label {
+ width: 140px;
+ text-align: left;
+ }
+
+ .ant-timeline.ant-timeline-alternate .ant-timeline-item-tail,
+ .ant-timeline.ant-timeline-right .ant-timeline-item-tail,
+ .ant-timeline.ant-timeline-label .ant-timeline-item-tail,
+ .ant-timeline.ant-timeline-alternate .ant-timeline-item-head,
+ .ant-timeline.ant-timeline-right .ant-timeline-item-head,
+ .ant-timeline.ant-timeline-label .ant-timeline-item-head,
+ .ant-timeline.ant-timeline-alternate .ant-timeline-item-head-custom,
+ .ant-timeline.ant-timeline-right .ant-timeline-item-head-custom,
+ .ant-timeline.ant-timeline-label .ant-timeline-item-head-custom {
+ left: 145px;
+ }
+
+ .ant-timeline.ant-timeline-alternate .ant-timeline-item-left .ant-timeline-item-content,
+ .ant-timeline.ant-timeline-right .ant-timeline-item-left .ant-timeline-item-content,
+ .ant-timeline.ant-timeline-label .ant-timeline-item-left .ant-timeline-item-content {
+ left : calc(50% - 135px);
+ width : calc(100% - 150px);
+ text-align: left;
+ }
+
+}
\ No newline at end of file
diff --git a/src/app/shared/components/logistics-time-line/logistics-time-line.component.ts b/src/app/shared/components/logistics-time-line/logistics-time-line.component.ts
new file mode 100644
index 00000000..e57ad269
--- /dev/null
+++ b/src/app/shared/components/logistics-time-line/logistics-time-line.component.ts
@@ -0,0 +1,15 @@
+import { Component, OnInit } from '@angular/core';
+
+@Component({
+ selector: 'app-logistics-time-line',
+ templateUrl: './logistics-time-line.component.html',
+ styleUrls: ['./logistics-time-line.component.less']
+})
+export class LogisticsTimeLineComponent implements OnInit {
+
+ constructor() { }
+
+ ngOnInit(): void {
+ }
+
+}
diff --git a/src/app/shared/shared-delon.module.ts b/src/app/shared/shared-delon.module.ts
index 097d78f6..f9ef368b 100644
--- a/src/app/shared/shared-delon.module.ts
+++ b/src/app/shared/shared-delon.module.ts
@@ -3,5 +3,6 @@ import { SEModule } from '@delon/abc/se';
import { STModule } from '@delon/abc/st';
import { SVModule } from '@delon/abc/sv';
import { DelonFormModule } from '@delon/form';
+import { QRModule } from '@delon/abc/qr';
-export const SHARED_DELON_MODULES = [PageHeaderModule, STModule, SVModule, SEModule,DelonFormModule ];
+export const SHARED_DELON_MODULES = [PageHeaderModule, STModule, SVModule, SEModule, DelonFormModule, QRModule];
diff --git a/src/app/shared/shared-zorro.module.ts b/src/app/shared/shared-zorro.module.ts
index 398debf3..a907ecf0 100644
--- a/src/app/shared/shared-zorro.module.ts
+++ b/src/app/shared/shared-zorro.module.ts
@@ -1,9 +1,3 @@
-import { NzInputNumberModule } from 'ng-zorro-antd/input-number';
-import { NzTreeModule } from 'ng-zorro-antd/tree';
-import { NzProgressModule } from 'ng-zorro-antd/progress';
-import { NzPopoverModule } from 'ng-zorro-antd/popover';
-import { NzModalModule } from 'ng-zorro-antd/modal';
-import { NzToolTipModule } from 'ng-zorro-antd/tooltip';
/*
* @Author: your name
* @Date: 2021-11-29 10:20:33
@@ -12,6 +6,12 @@ import { NzToolTipModule } from 'ng-zorro-antd/tooltip';
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: \tms-obc-web\src\app\shared\shared-zorro.module.ts
*/
+import { NzInputNumberModule } from 'ng-zorro-antd/input-number';
+import { NzTreeModule } from 'ng-zorro-antd/tree';
+import { NzProgressModule } from 'ng-zorro-antd/progress';
+import { NzPopoverModule } from 'ng-zorro-antd/popover';
+import { NzModalModule } from 'ng-zorro-antd/modal';
+import { NzToolTipModule } from 'ng-zorro-antd/tooltip';
import { NzStepsModule } from 'ng-zorro-antd/steps';
import { NzAlertModule } from 'ng-zorro-antd/alert';
import { NzBadgeModule } from 'ng-zorro-antd/badge';
@@ -36,8 +36,9 @@ import { NzTabsModule } from 'ng-zorro-antd/tabs';
import { NzRadioModule } from 'ng-zorro-antd/radio';
import { NzTimePickerModule } from 'ng-zorro-antd/time-picker';
import { NzCheckboxModule } from 'ng-zorro-antd/checkbox';
-import { QRModule } from '@delon/abc/qr';
import { NzEmptyModule } from 'ng-zorro-antd/empty';
+import { NzStatisticModule } from 'ng-zorro-antd/statistic';
+import { NzTimelineModule } from 'ng-zorro-antd/timeline';
export const SHARED_ZORRO_MODULES = [
NzButtonModule,
NzGridModule,
@@ -67,7 +68,8 @@ export const SHARED_ZORRO_MODULES = [
NzTimePickerModule,
NzCheckboxModule,
NzInputNumberModule,
- QRModule,
NzPopoverModule,
NzEmptyModule,
+ NzStatisticModule,
+ NzTimelineModule
];
diff --git a/src/app/shared/shared.module.ts b/src/app/shared/shared.module.ts
index b14ffe68..1e10dace 100644
--- a/src/app/shared/shared.module.ts
+++ b/src/app/shared/shared.module.ts
@@ -26,6 +26,7 @@ import { MouseFocusModule } from './components/mouse-focus';
import { ScrollbarModule } from './components/scrollbar';
import { StatusLabelModule } from './components/status-label';
import { SharedThirdModule } from './shared-third.module';
+import { LogisticsTimeLineComponent } from './components/logistics-time-line/logistics-time-line.component';
const MODULES = [
AddressModule,
@@ -41,6 +42,8 @@ const MODULES = [
];
// #endregion
+const SHAREDCOMPONENTS = [LogisticsTimeLineComponent];
+
@NgModule({
imports: [
CommonModule,
@@ -69,7 +72,9 @@ const MODULES = [
...SHARED_ZORRO_MODULES,
...MODULES,
// third libs
- ...THIRDMODULES
- ]
+ ...THIRDMODULES,
+ ...SHAREDCOMPONENTS
+ ],
+ declarations: SHAREDCOMPONENTS
})
export class SharedModule {}
diff --git a/src/environments/environment.service.ts b/src/environments/environment.service.ts
index 935f7425..a0cafad7 100644
--- a/src/environments/environment.service.ts
+++ b/src/environments/environment.service.ts
@@ -12,7 +12,7 @@ import { Injectable } from '@angular/core';
})
export class EnvironmentService {
// 应用ID
- private appId = `D40B4EFC33FC4803864934872A11B0CE`;
+ private appId = `5800BF51DC9A494489700F09E3B81520`;
// 租户ID
private tenantId = `1352892699355607041`;
private env: { appId: string; tenantId: string } = { appId: this.appId, tenantId: this.tenantId };