diff --git a/src/app/routes/order-management/components/vehicle-detail-change/vehicle-detail-change.component.less b/src/app/routes/order-management/components/vehicle-detail-change/vehicle-detail-change.component.less index 839fd83a..1e8af457 100644 --- a/src/app/routes/order-management/components/vehicle-detail-change/vehicle-detail-change.component.less +++ b/src/app/routes/order-management/components/vehicle-detail-change/vehicle-detail-change.component.less @@ -45,19 +45,19 @@ .ant-anchor-ink::before { width: 0; } + + .ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab, + .ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab, + .ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab, + .ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab { + margin-left: 40px + } } .leftPadding { padding-right: 100px; } - /deep/ .ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab, - .ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab, - .ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab, - .ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab { - margin-left: 40px - } - .tip-font { margin-left: 16px; font-weight: 500; diff --git a/src/app/routes/order-management/components/vehicle-detail/vehicle-detail.component.less b/src/app/routes/order-management/components/vehicle-detail/vehicle-detail.component.less index d15425e7..287ea1bb 100644 --- a/src/app/routes/order-management/components/vehicle-detail/vehicle-detail.component.less +++ b/src/app/routes/order-management/components/vehicle-detail/vehicle-detail.component.less @@ -45,16 +45,17 @@ .ant-anchor-ink::before { width: 0; } + + .ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab, + .ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab, + .ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab, + .ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab { + margin-left: 40px + } } .leftPadding { padding-right: 100px; } - /deep/ .ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab, - .ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab, - .ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab, - .ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab { - margin-left: 40px - } } \ No newline at end of file diff --git a/src/app/routes/ticket-management/components/cancellation-invoice/cancellation-invoice.component.html b/src/app/routes/ticket-management/components/cancellation-invoice/cancellation-invoice.component.html new file mode 100644 index 00000000..d6b1a88b --- /dev/null +++ b/src/app/routes/ticket-management/components/cancellation-invoice/cancellation-invoice.component.html @@ -0,0 +1,73 @@ + + + + + +
+
+ +
+
+ + + + +
+
+
+ + + + + + + + +
+
+ 已选择 + {{ selectedRows.length }} 张发票   发票金额总计 + {{totalCallNo }} + 清空 +
+ + + +
+
+ + + + + {{ item.no }}
+
+ + 起运地: 广东省深圳市南山区
+ 目的地: 湖北省武汉市青山区
+ 货物名称: 钢材
+ 车型车牌: 高栏车 粤B36889
+
+
+
+ + +
+
+ + + + + + +
+
+
\ No newline at end of file diff --git a/src/app/routes/ticket-management/components/cancellation-invoice/cancellation-invoice.component.less b/src/app/routes/ticket-management/components/cancellation-invoice/cancellation-invoice.component.less new file mode 100644 index 00000000..40095399 --- /dev/null +++ b/src/app/routes/ticket-management/components/cancellation-invoice/cancellation-invoice.component.less @@ -0,0 +1,26 @@ +:host::ng-deep { + .search-box { + .ant-card-body { + padding-bottom: 18px; + } + } + + .content-box { + .ant-card-body { + padding-top: 0; + } + } + + nz-range-picker { + width: 100%; + } + + .ant-tabs-tab-btn { + padding-left : 16px; + padding-right: 16px; + } + + .text-truncate { + white-space: normal; + } +} \ No newline at end of file diff --git a/src/app/routes/ticket-management/components/cancellation-invoice/cancellation-invoice.component.ts b/src/app/routes/ticket-management/components/cancellation-invoice/cancellation-invoice.component.ts new file mode 100644 index 00000000..03361897 --- /dev/null +++ b/src/app/routes/ticket-management/components/cancellation-invoice/cancellation-invoice.component.ts @@ -0,0 +1,267 @@ +import { Component, OnInit, ViewChild } from '@angular/core'; +import { Router } from '@angular/router'; +import { STComponent, STColumn, STRequestOptions, STChange } from '@delon/abc/st'; +import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form'; +import { NzModalService } from 'ng-zorro-antd/modal'; +import { TicketService } from '../../services/ticket.service'; +import { RequestedInvoiceModalComponent } from '../invoice-requested/requested-invoice-modal/requested-invoice-modal.component'; +import { PushInvoiceComponent } from './push-invoice/push-invoice.component'; + +@Component({ + selector: 'app-cancellation-invoice', + templateUrl: './cancellation-invoice.component.html', + styleUrls: ['./cancellation-invoice.component.less'] +}) +export class CancellationInvoiceComponent implements OnInit { + @ViewChild('st', { static: true }) + st!: STComponent; + @ViewChild('sf', { static: false }) + sf!: SFComponent; + @ViewChild('requestedModal', { static: false }) + requestedModal!: any; + columns: STColumn[] = this.initST(); + searchSchema: SFSchema = this.initSF(); + + reqParams = {}; + + _$expand = false; + + selectedRows: any[] = []; + totalCallNo = 0; + constructor(public service: TicketService, private nzModalService: NzModalService, private router: Router) {} + + ngOnInit(): void {} + + beforeReq = (requestOptions: STRequestOptions) => { + if (this.sf) { + this.reqParams = { ...this.sf.value }; + } + return requestOptions; + }; + + stChange(e: STChange): void { + switch (e.type) { + case 'checkbox': + this.selectedRows = e.checkbox!; + this.totalCallNo = this.selectedRows.reduce((total, cv) => total + cv.callNo, 0); + break; + } + } + + approval(): void {} + + add(): void {} + + /** + * 手工开票 + * @param item + */ + requestedAction(item: any) { + const modal = this.nzModalService.create({ + nzTitle: '发票确认', + nzContent: this.requestedModal, + nzOnOk: () => {} + }); + } + + /** + * 批量推送发票 + * @param item + */ + batchPush(item?: any) { + if (this.selectedRows?.length <= 0 && !item) { + this.service.msgSrv.warning('请选择开票申请'); + return; + } + this.nzModalService.warning({ + nzTitle: '确定将所选待处理开票申请推送开票?', + nzContent: '推送开票后发票信息不可修改,待系统开票完成后会自动返回开票结果', + nzOnOk: () => {} + }); + } + + /** + * 撤回 + * @param item + * @returns + */ + batchWithdraw(item?: any) { + if (this.selectedRows?.length <= 0 && !item) { + this.service.msgSrv.warning('请选择开票申请'); + return; + } + this.nzModalService.warning({ + nzTitle: '确定将所选待确认开票申请撤回?', + nzContent: '提交税控后发票信息不可修改,待税控开票完成后返回开票结果', + nzOnOk: () => {} + }); + } + + /** + * 移除 + * @param item + * @returns + */ + batchRemove(item?: any) { + if (this.selectedRows?.length <= 0 && !item) { + this.service.msgSrv.warning('请选择开票申请'); + return; + } + this.nzModalService.warning({ + nzTitle: '确定将所选待确认开票申请撤回?', + nzContent: '提交税控后发票信息不可修改,待税控开票完成后返回开票结果', + nzOnOk: () => {} + }); + } + + /** + * 推送发票 + * @param item + */ + pushInvoiceAction(item: any) { + const modal = this.nzModalService.create({ + nzTitle: '推送开票', + nzContent: PushInvoiceComponent, + nzWidth: 1200, + }); + } + + /** + * 重置表单 + */ + resetSF() { + this.sf.reset(); + this._$expand = false; + } + + /** + * 伸缩查询条件 + */ + expandToggle() { + this._$expand = !this._$expand; + this.sf?.setValue('/expand', this._$expand); + } + + private initSF(): SFSchema { + return { + properties: { + expand: { + type: 'boolean', + ui: { + hidden: true + } + }, + orderSn: { + type: 'string', + title: '申请编号', + ui: { + placeholder: '请输入' + } + }, + receiveName2: { + type: 'string', + title: '购买人', + enum: [{ label: '全部', value: '全部' }], + ui: { + widget: 'select', + placeholder: '请选择' + } + }, + receiveName3: { + type: 'string', + title: '网络货运人', + enum: [{ label: '全部', value: '全部' }], + ui: { + widget: 'select', + placeholder: '请选择' + } + }, + receiveName23: { + type: 'string', + title: '发票状态', + enum: [{ label: '全部', value: '全部' }], + ui: { + widget: 'select', + placeholder: '请选择', + visibleIf: { + expand: (value: boolean) => value + } + } + }, + or2derSn: { + type: 'string', + title: '订单号', + ui: { + placeholder: '请输入', + visibleIf: { + expand: (value: boolean) => value + } + } + }, + createTime: { + title: '申请时间', + type: 'string', + ui: { + widget: 'date', + mode: 'range', + format: 'yyyy-MM-dd', + visibleIf: { + expand: (value: boolean) => value + } + } as SFDateWidgetSchema + } + } + }; + } + + private initST(): STColumn[] { + return [ + { title: '', index: 'key', type: 'checkbox' }, + { title: '分票编号', render: 'no', width: 150 }, + { title: '申请编号', index: 'callNo', width: 120 }, + { title: '申请时间', index: 'updatedAt', type: 'date', width: 150 }, + { title: '网络货运人', index: 'callNo', width: 120 }, + { title: '购买方', index: 'callNo', width: 90 }, + { title: '订单数', index: 'callNo', width: 90 }, + { title: '价税合计', index: 'callNo', width: 90 }, + { title: '金额', index: 'callNo', width: 100 }, + { title: '税率', index: 'callNo', width: 90 }, + { title: '税额', index: 'callNo', width: 90 }, + { title: '服务名称', index: 'callNo', width: 100 }, + { title: '销货清单', index: 'callNo', width: 90 }, + { title: '票面备注', render: 'description', width: 250 }, + { title: '其他要求', index: 'callNo', width: 100 }, + { + title: '操作', + width: 150, + fixed: 'right', + buttons: [ + { + text: '查看明细', + click: item => this.router.navigate(['ticket/cancellation-invoice/detail/1'], { queryParams: { type: 1 } }) + }, + { + text: '手工开票', + click: item => this.requestedAction(item) + }, + { + text: '推送开票', + click: item => this.pushInvoiceAction(item) + }, + { + text: '移除', + click: item => this.batchRemove(item) + }, + { + text: '确认' + // click: item => this.rejectAction(item) + }, + { + text: '撤回', + click: item => this.batchWithdraw(item) + } + ] + } + ]; + } +} diff --git a/src/app/routes/ticket-management/components/cancellation-invoice/push-invoice/push-invoice.component.html b/src/app/routes/ticket-management/components/cancellation-invoice/push-invoice/push-invoice.component.html new file mode 100644 index 00000000..69991612 --- /dev/null +++ b/src/app/routes/ticket-management/components/cancellation-invoice/push-invoice/push-invoice.component.html @@ -0,0 +1,55 @@ +
+
+ + 茅台股份有限公司 + + + 912301046656930913 + + + 贵州省贵阳市 + + + 075588393198 + + + 中国工商银行股份有限公司哈贵阳支行 + + + 3500044119068126788 + + +

起运地:广东省深圳市南山区

+

目的地:湖北省武汉市青山区

+

货物名称:钢材

+

车型车牌:高栏车 粤B36889

+
+
+
+ + 天津怡亚通物流科技有限公司 + + + VP12301046656 + + + 100笔 + + + 300,000.00元 + + + 运输服务费 + + + 需要 + + + 单位按吨 + + +
+
+ + + \ No newline at end of file diff --git a/src/app/routes/ticket-management/components/cancellation-invoice/push-invoice/push-invoice.component.less b/src/app/routes/ticket-management/components/cancellation-invoice/push-invoice/push-invoice.component.less new file mode 100644 index 00000000..aebf12ee --- /dev/null +++ b/src/app/routes/ticket-management/components/cancellation-invoice/push-invoice/push-invoice.component.less @@ -0,0 +1,13 @@ +:host::ng-deep { + + .statistics-box { + .ant-form-item { + margin-bottom: 0; + + .ant-form-item-control-input-content { + color: #f5222d; + } + } + } + +} \ No newline at end of file diff --git a/src/app/routes/ticket-management/components/cancellation-invoice/push-invoice/push-invoice.component.ts b/src/app/routes/ticket-management/components/cancellation-invoice/push-invoice/push-invoice.component.ts new file mode 100644 index 00000000..5cc79f49 --- /dev/null +++ b/src/app/routes/ticket-management/components/cancellation-invoice/push-invoice/push-invoice.component.ts @@ -0,0 +1,52 @@ +import { Component, OnInit, ViewChild } from '@angular/core'; +import { STComponent, STColumn } from '@delon/abc/st'; +import { NzModalService } from 'ng-zorro-antd/modal'; +import { TicketService } from '../../../services/ticket.service'; + +@Component({ + selector: 'app-push-invoice', + templateUrl: './push-invoice.component.html', + styleUrls: ['./push-invoice.component.less'] +}) +export class PushInvoiceComponent implements OnInit { + + @ViewChild('st', { static: false }) + st!: STComponent; + columns: STColumn[] = this.initST(); + data = [ + { + key: 0, + disabled: true, + href: 'https://ant.design', + avatar: 'https://gw.alipayobjects.com/zos/rmsportal/eeHMaZBwmTvLdIwMfBpg.png', + no: 'TradeCode 0' + }, + { + key: 1, + disabled: false, + href: 'https://ant.design', + avatar: 'https://gw.alipayobjects.com/zos/rmsportal/udxAbMEhpwthVVcjLXik.png', + no: 'TradeCode 1' + } + ]; + + info = {}; + + constructor(public service: TicketService, private nzModalService: NzModalService) {} + + ngOnInit(): void {} + + + private initST(): STColumn[] { + return [ + { title: '服务名称', index: 'no', width: 100 }, + { title: '规格型号', index: 'callNo', width: 100 }, + { title: '单位', index: 'callNo', width: 90 }, + { title: '数量', index: 'callNo', width: 90 }, + { title: '金额', index: 'callNo', width: 90 }, + { title: '税率', index: 'callNo', width: 90 }, + { title: '税额', index: 'callNo', width: 90 }, + ]; + } + +} diff --git a/src/app/routes/ticket-management/components/invoice-detail/invoice-detail.component.html b/src/app/routes/ticket-management/components/invoice-detail/invoice-detail.component.html new file mode 100644 index 00000000..133b096b --- /dev/null +++ b/src/app/routes/ticket-management/components/invoice-detail/invoice-detail.component.html @@ -0,0 +1,156 @@ + + + + + + + +
+
+ + 天津怡亚通物流科技有限公司 + + + VP2021012010 + + + 051010100 + + + 54364653 + + + 2021-10-11 + + + 2205.00 + + + 182.06 + + + 订单号11-12 + +
+
+ + 茅台股份有限公司 + + + 912301046656930913 + + + 贵州省贵阳市 + + + 075588393198 + + + 中国工商银行股份有限公司哈贵阳支行 + + + 3500044119068126788 + + + 开票单位要吨 + +
+
+ + + + + + + +
+
+
+ + + + + +
+
+ +
+
+ + + +
+
+ + +
+ +
+
+ +
+
+ + + +
+
+ + +
+ + + + + + + + {{ item.owner }} + + + + {{ item.callNo }} + + + + {{ item.progress }} + + + + {{ item.status }} + + + + +

顺丰快递: SF123456789 已签收 +

+ +
+
+ + +
\ No newline at end of file diff --git a/src/app/routes/ticket-management/components/invoice-detail/invoice-detail.component.less b/src/app/routes/ticket-management/components/invoice-detail/invoice-detail.component.less new file mode 100644 index 00000000..29f02517 --- /dev/null +++ b/src/app/routes/ticket-management/components/invoice-detail/invoice-detail.component.less @@ -0,0 +1,35 @@ +:host::ng-deep { + .search-box { + .ant-card-body { + padding-bottom: 8px; + padding-top : 8px; + } + } + + + .statistics-box { + .ant-card-body { + padding-bottom: 8px; + padding-top : 8px; + } + + .ant-form-item { + margin-bottom: 0; + + .ant-form-item-control-input-content { + color: #f5222d; + } + } + } +} + +.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/invoice-detail/invoice-detail.component.ts b/src/app/routes/ticket-management/components/invoice-detail/invoice-detail.component.ts new file mode 100644 index 00000000..77fd00ed --- /dev/null +++ b/src/app/routes/ticket-management/components/invoice-detail/invoice-detail.component.ts @@ -0,0 +1,177 @@ +import { Component, OnInit, ViewChild } from '@angular/core'; +import { ActivatedRoute, Router } from '@angular/router'; +import { STComponent, STColumn, STChange, STRequestOptions } from '@delon/abc/st'; +import { SFComponent, SFSchema } from '@delon/form'; +import { NzModalService } from 'ng-zorro-antd/modal'; +import { TicketService } from '../../services/ticket.service'; + +@Component({ + selector: 'app-invoice-detail', + templateUrl: './invoice-detail.component.html', + styleUrls: ['./invoice-detail.component.less'] +}) +export class InvoiceDetailComponent implements OnInit { + @ViewChild('orderST', { static: true }) + orderST!: STComponent; + @ViewChild('orderSf', { static: false }) + orderSf!: SFComponent; + orderColumns: STColumn[] = this.initOrderST(); + orderSchema: SFSchema = this.initOrderSF(); + ordeReqParams = {}; + + @ViewChild('costST', { static: true }) + costST!: STComponent; + @ViewChild('costSf', { static: false }) + costSf!: SFComponent; + costColumns: STColumn[] = this.initCostST(); + costSchema: SFSchema = this.initCostSF(); + orderReqParams = {}; + + @ViewChild('invoiceST', { static: true }) + invoiceST!: STComponent; + invoiceColumns: STColumn[] = this.initInvoiceST(); + invoiceReqParams = {}; + + isCanEdit = false; + isEdit = false; + + constructor(public service: TicketService, private route: ActivatedRoute) { + this.isCanEdit = !!route.snapshot.queryParams.type; + } + + ngOnInit(): void {} + + beforeReq = (requestOptions: STRequestOptions) => { + if (this.orderSf) { + this.orderReqParams = { ...this.orderSf.value }; + } + if (this.costSf) { + this.orderReqParams = { ...this.costSf.value }; + } + return requestOptions; + }; + + goBack() { + history.go(-1); + } + + saveInvoices() { + console.log(this.invoiceST._data); + + this.isEdit = false; + } + + /** + * 重置表单 + */ + resetSF(tab: number) { + switch (tab) { + case 1: + this.orderSf.reset(); + break; + case 2: + this.costSf.reset(); + break; + + default: + break; + } + } + + + private initOrderSF(): SFSchema { + return { + properties: { + orderSn: { + type: 'string', + title: '订单号', + ui: { + autocomplete: 'off' + } + }, + receiveName: { + type: 'string', + title: '订单类型', + enum: [{ label: '全部', value: '' }], + ui: { + widget: 'select', + placeholder: '请选择' + }, + default: '' + }, + receiveNa22me: { + type: 'string', + title: '所属项', + enum: [{ label: '全部', value: '' }], + ui: { + widget: 'select', + placeholder: '请选择' + }, + default: '' + } + } + }; + } + + private initOrderST(): STColumn[] { + return [ + { title: '订单号', index: 'no' }, + { title: '订单完成日期', index: 'callNo', type: 'date' }, + { title: '所属项目', index: 'callNo' }, + { title: '订单类型', index: 'callNo' }, + { title: '装货地', index: 'callNo' }, + { title: '卸货地', index: 'callNo' }, + { title: '货物信息', index: 'callNo' }, + { title: '承运司机', index: 'callNo', format: item => `特朗普 13789040523 粤GT8419` }, + { title: '申请金额', index: 'callNo' }, + { title: '运输费', index: 'callNo' }, + { title: '附加费', index: 'callNo' }, + { title: '开票金额', index: 'callNo' } + ]; + } + + private initCostSF(): SFSchema { + return { + properties: { + orderSn: { + type: 'string', + title: '订单号', + ui: { + autocomplete: 'off' + } + }, + orderS2n: { + type: 'string', + title: '费用号', + ui: { + autocomplete: 'off' + } + } + } + }; + } + + private initCostST(): STColumn[] { + return [ + { title: '费用号', index: 'no' }, + { title: '订单号', index: 'callNo' }, + { title: '订单日期', index: 'callNo', type: 'date' }, + { title: '计费日期', index: 'callNo', type: 'date' }, + { title: '税率', index: 'callNo' }, + { title: '申请金额', index: 'callNo' }, + { title: '开票金额', index: 'callNo' } + ]; + } + + private initInvoiceST(): STColumn[] { + return [ + { title: '服务名称', render: 'owner' }, + { title: '规格型号', render: 'callNo' }, + { title: '单位', render: 'progress' }, + { title: '数量', render: 'status' }, + { title: '金额', index: 'callNo' }, + { title: '税率', index: 'callNo' }, + { title: '税额', index: 'callNo' } + ]; + } +} 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 index aa9d45bd..3de75692 100644 --- 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 @@ -100,7 +100,7 @@ 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 index bbf3d873..2eaf5339 100644 --- 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 @@ -1,6 +1,6 @@ import { Component, OnInit, ViewChild, ViewEncapsulation } from '@angular/core'; import { Router } from '@angular/router'; -import { STComponent, STColumn, STChange } from '@delon/abc/st'; +import { STComponent, STColumn, STChange, STRequestOptions } from '@delon/abc/st'; import { SFComponent, SFSchema, SFDateWidgetSchema, SFTextWidgetSchema } from '@delon/form'; import { NzModalService } from 'ng-zorro-antd/modal'; import { TicketService } from '../../../services/ticket.service'; @@ -30,6 +30,13 @@ export class InvoiceRequestedDetailComponent implements OnInit { ngOnInit(): void {} + beforeReq = (requestOptions: STRequestOptions) => { + if (this.sf) { + this.reqParams = { ...this.sf.value }; + } + return requestOptions; + }; + stChange(e: STChange): void { switch (e.type) { case 'checkbox': 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 4250101a..2b3697d5 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 @@ -13,7 +13,6 @@ import { RequestedInvoiceModalComponent } from './requested-invoice-modal/reques 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 }) 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 deleted file mode 100644 index 4e30f271..00000000 --- a/src/app/routes/ticket-management/components/invoiced-list/invoiced-list-detail/invoiced-list-detail.component.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
- -
-
- - - - -
-
-
- - - - \ 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 deleted file mode 100644 index 6dee2fec..00000000 --- a/src/app/routes/ticket-management/components/invoiced-list/invoiced-list-detail/invoiced-list-detail.component.less +++ /dev/null @@ -1,24 +0,0 @@ -: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 deleted file mode 100644 index dc4f0bb7..00000000 --- a/src/app/routes/ticket-management/components/invoiced-list/invoiced-list-detail/invoiced-list-detail.component.ts +++ /dev/null @@ -1,121 +0,0 @@ -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/ticket.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/ticket-management-routing.module.ts b/src/app/routes/ticket-management/ticket-management-routing.module.ts index 597257fc..1872c98a 100644 --- a/src/app/routes/ticket-management/ticket-management-routing.module.ts +++ b/src/app/routes/ticket-management/ticket-management-routing.module.ts @@ -1,19 +1,22 @@ import { NgModule } from '@angular/core'; import { RouterModule, Routes } from '@angular/router'; +import { CancellationInvoiceComponent } from './components/cancellation-invoice/cancellation-invoice.component'; import { ETCBlacklistComponent } from './components/etc-blacklist/etc-blacklist.component'; 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 { InvoiceDetailComponent } from './components/invoice-detail/invoice-detail.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: 'invoice-list/detail/:id', component: InvoiceDetailComponent }, + { path: 'cancellation-invoice', component: CancellationInvoiceComponent }, + { path: 'cancellation-invoice/detail/:id', component: InvoiceDetailComponent }, { 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 22927d1a..0bcbcbca 100644 --- a/src/app/routes/ticket-management/ticket-management.module.ts +++ b/src/app/routes/ticket-management/ticket-management.module.ts @@ -9,10 +9,12 @@ import { ETCBlacklistComponent } from './components/etc-blacklist/etc-blacklist. 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'; import { RequestedInvoiceModalComponent } from './components/invoice-requested/requested-invoice-modal/requested-invoice-modal.component'; import { RequestedDetailComponent } from './components/invoice-requested/requested-detail/requested-detail.component'; +import { InvoiceDetailComponent } from './components/invoice-detail/invoice-detail.component'; +import { CancellationInvoiceComponent } from './components/cancellation-invoice/cancellation-invoice.component'; +import { PushInvoiceComponent } from './components/cancellation-invoice/push-invoice/push-invoice.component'; const COMPONENTS: any = [ ETCInvoicedListComponent, @@ -22,11 +24,12 @@ const COMPONENTS: any = [ InvoiceRequestedComponent, InvoicedListComponent, InvoiceRequestedDetailComponent, - InvoicedListDetailComponent + InvoiceDetailComponent, + CancellationInvoiceComponent ]; const NOTROUTECOMPONENTS: any = [TransactionDetailsComponent, RequestedInvoiceModalComponent, RequestedDetailComponent]; @NgModule({ - declarations: [...COMPONENTS, ...NOTROUTECOMPONENTS], + declarations: [...COMPONENTS, ...NOTROUTECOMPONENTS, PushInvoiceComponent], imports: [CommonModule, TicketManagementRoutingModule, SharedModule] }) export class TicketManagementModule {} 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 index 36f874bc..d2e03afe 100644 --- 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 @@ -1,7 +1,7 @@ :host::ng-deep { .ant-timeline.ant-timeline-label .ant-timeline-item-label { - width: 140px; + width : 140px; text-align: left; } @@ -20,7 +20,7 @@ .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); + left : 135px; width : calc(100% - 150px); text-align: left; } diff --git a/src/assets/mocks/menu-data.json b/src/assets/mocks/menu-data.json index 88846c1d..8f7297d2 100644 --- a/src/assets/mocks/menu-data.json +++ b/src/assets/mocks/menu-data.json @@ -317,12 +317,21 @@ "link": "/ticket/invoice-requested/detail/:id", "hide": true }, + { + "text": "销票处理", + "link": "/ticket/cancellation-invoice" + }, + { + "text": "销票订单明细", + "link": "/ticket/cancellation-invoice/detail/:id", + "hide": true + }, { "text": "已开发票", "link": "/ticket/invoice-list" }, { - "text": "已开发票明细", + "text": "已开订单明细", "link": "/ticket/invoice-list/detail/:id", "hide": true }