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!

+ + + + + +
+
+ +
+
+ + + + +
+
+
+ + + +
+ +
+ 已选择 + {{ selectedRows.length }} 条运单 + 清空 +
+
+ + +
+ + +
+
+ + + +
+
+
\ 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 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ +
+
+ + + +
+
+
+ + +
+ + +
+ 已选择 + {{ selectedRows.length }} 条数据   开票金额总计 {{ + totalCallNo }} + 清空 +
+
+ + +
\ 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!

+ + + + + +
+
+ +
+
+ + + + +
+
+
+ + + + + + + + + +
+ +
+ 已选择 + {{ selectedRows.length }} 条数据   开票金额总计 {{ + totalCallNo }} + 清空 +
+
+ + +
+ + +
+
+ + + +
+
+
\ 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!

+ + + + + +
+
+ +
+
+ + + + +
+
+
+ + +
+ + +
+ 已选择 + {{ selectedRows.length }} 条数据   开票金额总计 {{ + totalCallNo }} + 清空 +
+
+ + + + {{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 };