This commit is contained in:
Taric Xin
2022-05-06 14:24:12 +08:00
parent 2c8f8250e4
commit 1851f9e6d8
25 changed files with 409 additions and 637 deletions

View File

@ -1,9 +1,8 @@
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 { SFSchema, SFDateWidgetSchema } from '@delon/form';
import { SearchDrawerService } from '@shared';
import { NzModalService } from 'ng-zorro-antd/modal';
import { BasicTableComponent } from 'src/app/routes/commom';
import { FreightAccountService } from '../../services/freight-account.service';
@ -12,7 +11,7 @@ import { FreightAccountService } from '../../services/freight-account.service';
templateUrl: './voucher-management.component.html',
styleUrls: ['../../../commom/less/commom-table.less']
})
export class VoucherManagementComponent extends BasicTableComponent implements OnInit {
export class VoucherManagementComponent extends BasicTableComponent {
@ViewChild('st', { static: true })
st!: STComponent;
@ViewChild('auditModal', { static: false })
@ -25,8 +24,6 @@ export class VoucherManagementComponent extends BasicTableComponent implements O
super(searchDrawerService);
}
ngOnInit(): void {}
search() {
this.st?.load(1);
}

View File

@ -66,8 +66,10 @@
<a *ngIf="totalCallNo > 0" (click)="st.clearCheck();totalCallNo=0" class="ml-lg">清空</a>
</div>
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()">筛选</button>
<button nz-button nzDanger (click)="exprot()"> 导出</button>
<button nz-button (click)="this.auditAction(null)">审核</button>
<button nz-button nzDanger (click)="exprot()" acl [acl-ability]="['FINANCIAL-WITHDRAWALS-export']">
导出</button>
<button nz-button (click)="this.auditAction(null)" acl
[acl-ability]="['FINANCIAL-WITHDRAWALS-audit']">审核</button>
</div>
</ng-template>

View File

@ -1,7 +1,7 @@
import { Component, ViewChild } from '@angular/core';
import { Router } from '@angular/router';
import { STComponent, STColumn, STChange, STRequestOptions } from '@delon/abc/st';
import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form';
import { SFSchema, SFDateWidgetSchema } from '@delon/form';
import { SearchDrawerService } from '@shared';
import { NzModalService } from 'ng-zorro-antd/modal';
import { BasicTableComponent } from 'src/app/routes/commom';
@ -48,7 +48,7 @@ export class WithdrawalsRecordComponent extends BasicTableComponent {
createTime: {
start: this.sf?.value.createTime?.[0] || '',
end: this.sf?.value.createTime?.[1] || ''
},
}
});
}
delete requestOptions?.body?.expand;
@ -187,13 +187,13 @@ export class WithdrawalsRecordComponent extends BasicTableComponent {
type: 'string',
title: '账户类型',
enum: [
{label: '全部', value: ''},
{label: '个人合伙人', value: '4'},
{label: '企业合伙人', value: '5'}
{ label: '全部', value: '' },
{ label: '个人合伙人', value: '4' },
{ label: '企业合伙人', value: '5' }
],
ui: {
widget: 'select',
placeholder: '请选择',
placeholder: '请选择'
}
},
ltdId: {

View File

@ -1,7 +1,5 @@
<page-header-wrapper [title]="'可开票订单'">
<!-- <page-header-wrapper [title]="'可开票订单'">
</page-header-wrapper>
<nz-card class="search-box" nzBordered>
<div nz-row nzGutter="8">
<div nz-col [nzXl]="_$expand ? 24 : 18" [nzLg]="24" [nzSm]="24" [nzXs]="24">
@ -20,11 +18,20 @@
</button>
</div>
</div>
</nz-card>
</nz-card> -->
<nz-card class="content-box" nzBordered>
<nz-card class="table-box">
<div class="header_box">
<label class="page_title"> <label class="driver">|</label> 可开票订单</label>
<div class="mr-sm">
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()" acl
[acl-ability]="['FINANCIAL-VOUCHER-list']">筛选</button>
<button nz-button nzDanger (click)="export()" acl
[acl-ability]="['TICKET-BILLING-ORDER-exprort']">导出</button>
</div>
</div>
<st #st [data]="service.$api_invoicedBillInfo_page" [columns]="columns" [req]="{ process: beforeReq }" [page]="{}"
[loading]="false" [scroll]="{ x:'1200px' }">
[loading]="false" [scroll]="{ x:'1200px',y:scrollY }">
<ng-template st-row="sts" let-item let-index="index">
<span *ngIf="item.sts === '1'">待受理</span>
<span *ngIf="item.sts === '2'">处理中</span>

View File

@ -2,27 +2,29 @@ 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, SFDateWidgetSchema, SFSelectWidgetSchema } from '@delon/form';
import { SearchDrawerService } from '@shared';
import { NzModalService } from 'ng-zorro-antd/modal';
import { BasicTableComponent } from 'src/app/routes/commom';
import { TicketService } from '../../services/ticket.service';
@Component({
selector: 'app-billing-order',
templateUrl: './billing-order.component.html',
styleUrls: ['../../../commom/less/box.less', '../../../commom/less/expend-but.less']
styleUrls: ['../../../commom/less/commom-table.less']
})
export class BillingOrderComponent implements OnInit {
export class BillingOrderComponent extends BasicTableComponent {
@ViewChild('st', { static: true })
st!: STComponent;
@ViewChild('sf', { static: false })
sf!: SFComponent;
columns: STColumn[] = this.initST();
searchSchema: SFSchema = this.initSF();
schema: SFSchema = this.initSF();
_$expand = false;
constructor(public service: TicketService, private router: Router, public searchDrawerService: SearchDrawerService) {
super(searchDrawerService);
}
constructor(public service: TicketService, private nzModalService: NzModalService, private router: Router, private ar: ActivatedRoute) {}
ngOnInit(): void {}
search() {
this.st?.load(1);
}
beforeReq = (requestOptions: STRequestOptions) => {
if (this.sf) {
@ -38,22 +40,6 @@ export class BillingOrderComponent implements OnInit {
this.router.navigateByUrl(`/order-management/vehicle/vehicle-detail/${item.billId}`);
}
/**
* 重置表单
*/
resetSF() {
this.sf.reset();
this._$expand = false;
}
/**
* 伸缩查询条件
*/
expandToggle() {
this._$expand = !this._$expand;
this.sf?.setValue('/expand', this._$expand);
}
export() {
this.service.exportStart({ ...this.sf?.value, pageSize: -1 }, this.service.$api_export_InvoicedBillInfoPage);
}
@ -118,20 +104,14 @@ export class BillingOrderComponent implements OnInit {
type: 'string',
title: '申请编号',
ui: {
autocomplete: 'off',
visibleIf: {
expand: (value: boolean) => value
}
autocomplete: 'off'
}
},
vatinvcode: {
type: 'string',
title: '分票编号',
ui: {
placeholder: '请输入',
visibleIf: {
expand: (value: boolean) => value
}
placeholder: '请输入'
}
},
vatappdate: {
@ -140,10 +120,7 @@ export class BillingOrderComponent implements OnInit {
ui: {
widget: 'sl-from-to',
type: 'date',
format: 'yyyy-MM-dd HH:mm:ss',
visibleIf: {
expand: (value: boolean) => value
}
format: 'yyyy-MM-dd HH:mm:ss'
} as SFDateWidgetSchema
},
sts: {
@ -152,10 +129,7 @@ export class BillingOrderComponent implements OnInit {
ui: {
widget: 'dict-select',
params: { dictKey: 'etc:invoicing:status' },
placeholder: '请选择',
visibleIf: {
expand: (value: boolean) => value
}
placeholder: '请选择'
}
},
invoiceno: {
@ -163,10 +137,7 @@ export class BillingOrderComponent implements OnInit {
title: '发票号码',
ui: {
placeholder: '请输入',
autocomplete: 'off',
visibleIf: {
expand: (value: boolean) => value
}
autocomplete: 'off'
}
},
invoicedate: {
@ -175,10 +146,7 @@ export class BillingOrderComponent implements OnInit {
ui: {
widget: 'sl-from-to',
type: 'date',
format: 'yyyy-MM-dd',
visibleIf: {
expand: (value: boolean) => value
}
format: 'yyyy-MM-dd'
} as SFDateWidgetSchema
},
enterpriseInfoId: {
@ -188,9 +156,6 @@ export class BillingOrderComponent implements OnInit {
widget: 'select',
placeholder: '请选择',
allowClear: true,
visibleIf: {
expand: (value: boolean) => value
},
asyncData: () => this.service.getNetworkFreightForwarder()
}
}

View File

@ -1,7 +1,5 @@
<page-header-wrapper [title]="'销票处理'">
<!-- <page-header-wrapper [title]="'销票处理'">
</page-header-wrapper>
<nz-card class="search-box" nzBordered>
<div nz-row nzGutter="8">
<div nz-col [nzXl]="_$expand ? 24 : 18" [nzLg]="24" [nzSm]="24" [nzXs]="24">
@ -12,30 +10,36 @@
<div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" class="text-right">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="st?.load(1)">查询</button>
<button nz-button (click)="resetSF()">重置</button>
<!-- <button nz-button> 导出</button> -->
<button nz-button nzType="link" (click)="expandToggle()">
{{ !_$expand ? '展开' : '收起' }}
<i nz-icon [nzType]="!_$expand ? 'down' : 'up'"></i>
</button>
</div>
</div>
</nz-card>
</nz-card> -->
<nz-card class="content-box" nzBordered>
<nz-card class="table-box">
<div class="tab_header">
<label class="page_title">
<label class="driver">|</label>
销票处理</label>
<nz-tabset [nzTabBarExtraContent]="extraTemplate" (nzSelectedIndexChange)="selectChange($event)">
<nz-tab nzTitle="全部"></nz-tab>
<nz-tab nzTitle="待处理"></nz-tab>
<nz-tab nzTitle="待确认"></nz-tab>
<!-- <nz-tab nzTitle="已确认"></nz-tab> -->
</nz-tabset>
</div>
<ng-template #extraTemplate>
<div class="d-flex align-items-center">
<div class="d-flex align-items-center mr-sm">
<div class="mr-md">
已选择
<strong class="text-red">{{ selectedRows.length }}</strong> 张发票&nbsp;&nbsp; 发票金额总计
<strong class="text-red">{{totalCallNo }}</strong>
<a *ngIf="totalCallNo > 0" (click)="st.clearCheck();totalCallNo=0" class="ml-lg">清空</a>
</div>
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()">筛选</button>
<!-- <button nz-button *ngIf="resourceStatus===1 || !resourceStatus" (click)="this.batchPush()">推送开票</button> -->
<!-- <button nz-button *ngIf="resourceStatus===1 || !resourceStatus"
(click)="this.batchRemove(selectedRows)">移除</button>
@ -45,7 +49,7 @@
</ng-template>
<st #st [scroll]="{ x: '2000px' }" [data]="service.$api_ficoVatinvHList" [columns]="columns" [page]="{}"
<st #st [scroll]="{ x: '2000px',y:scrollY }" [data]="service.$api_ficoVatinvHList" [columns]="columns" [page]="{}"
[req]="{process: beforeReq }" [res]="{process:afterRes }" [loading]="false" (change)="stChange($event)">
<ng-template st-row="vatinvcode" let-item let-index="index" let-column="column">
{{ item.vatinvcode }} <br>

View File

@ -1,26 +0,0 @@
: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;
}
}

View File

@ -4,37 +4,42 @@ import { Router } from '@angular/router';
import { STComponent, STColumn, STRequestOptions, STChange } from '@delon/abc/st';
import { SFComponent, SFSchema, SFDateWidgetSchema, SFSelectWidgetSchema, SFSchemaEnum } from '@delon/form';
import { dateTimePickerUtil } from '@delon/util';
import { SearchDrawerService } from '@shared';
import { NzModalService } from 'ng-zorro-antd/modal';
import { of } from 'rxjs';
import { map } from 'rxjs/operators';
import { BasicTableComponent } from 'src/app/routes/commom';
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']
styleUrls: ['../../../commom/less/commom-table.less']
})
export class CancellationInvoiceComponent implements OnInit {
export class CancellationInvoiceComponent extends BasicTableComponent {
@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();
schema: SFSchema = this.initSF();
resourceStatus: any = '';
_$expand = false;
selectedRows: any[] = [];
totalCallNo = 0;
openInfo: any = { invoicedate: null, invoiceno: null, invoiceno2: null };
constructor(public service: TicketService, private nzModalService: NzModalService, private router: Router) {}
constructor(
public service: TicketService,
private nzModalService: NzModalService,
private router: Router,
public searchDrawerService: SearchDrawerService
) {
super(searchDrawerService);
}
ngOnInit(): void {}
search() {
this.st?.load(1);
}
beforeReq = (requestOptions: STRequestOptions) => {
if (this.sf) {
@ -236,22 +241,6 @@ export class CancellationInvoiceComponent implements OnInit {
});
}
/**
* 重置表单
*/
resetSF() {
this.sf.reset();
this._$expand = false;
}
/**
* 伸缩查询条件
*/
expandToggle() {
this._$expand = !this._$expand;
this.sf?.setValue('/expand', this._$expand);
}
private initSF(): SFSchema {
return {
properties: {
@ -287,10 +276,7 @@ export class CancellationInvoiceComponent implements OnInit {
widget: 'select',
placeholder: '请选择',
allowClear: true,
asyncData: () => this.service.getNetworkFreightForwarder(),
visibleIf: {
expand: (value: boolean) => value
}
asyncData: () => this.service.getNetworkFreightForwarder()
}
},
sts: {
@ -300,10 +286,7 @@ export class CancellationInvoiceComponent implements OnInit {
widget: 'dict-select',
containsAllLabel: true,
params: { dictKey: 'vatinv:status' },
containAllLable: true,
visibleIf: {
_$expand: (value: boolean) => value
}
containAllLable: true
} as SFSelectWidgetSchema
},
// or2derSn: {
@ -322,10 +305,7 @@ export class CancellationInvoiceComponent implements OnInit {
ui: {
widget: 'date',
mode: 'range',
format: 'yyyy-MM-dd',
visibleIf: {
expand: (value: boolean) => value
}
format: 'yyyy-MM-dd'
} as SFDateWidgetSchema
}
}
@ -407,7 +387,7 @@ export class CancellationInvoiceComponent implements OnInit {
{
text: '手工开票<br>',
acl: { ability: ['TICKET-CANCELLATION-apply'] },
iif: item => item.sts != '3' && item.sts != '4' ,
iif: item => item.sts != '3' && item.sts != '4',
click: item => this.requestedAction(item)
}
// {

View File

@ -1,14 +1,4 @@
<!--
* @Description :
* @Version : 1.0
* @Author : Shiming
* @Date : 2022-04-06 10:57:56
* @LastEditors : Shiming
* @LastEditTime : 2022-04-29 14:34:09
* @FilePath : \\tms-obc-web\\src\\app\\routes\\ticket-management\\components\\etc-blacklist\\etc-blacklist.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved.
-->
<page-header-wrapper [title]="'ETC白名单'" [content]="content">
<!-- <page-header-wrapper [title]="'ETC白名单'" [content]="content">
<ng-template #content>
<nz-tabset class="tabs-wrap">
<nz-tab *ngFor="let tab of tabs" [nzTitle]="tab.name" (nzSelect)="changeTab(tab)"> </nz-tab>
@ -33,25 +23,43 @@
<button nz-button (click)="exprot()" acl [acl-ability]="[tabType === 1 ?'TICKET-ETC-BLACK_LIST-exportFreight' : 'TICKET-ETC-BLACK_LIST-exportCart']"> 导出</button>
</div>
</div>
</nz-card>
</nz-card> -->
<nz-card>
<div class="d-flex align-items-center mb-md">
<button nz-button (click)="configAction()" acl [acl-ability]="[tabType === 1 ? 'TICKET-ETC-BLACK_LIST-addFreight' : 'TICKET-ETC-BLACK_LIST-addCart']">添加</button>
<button nz-button (click)="deleteAction()" acl [acl-ability]="[tabType === 1 ? 'TICKET-ETC-BLACK_LIST-deleteFreight' : 'TICKET-ETC-BLACK_LIST-deleteCart']">删除</button>
<div class="ml-md">
<nz-card class="table-box">
<div class="tab_header">
<label class="page_title"> <label class="driver">|</label> ETC白名单</label>
<nz-tabset [nzTabBarExtraContent]="extraTemplate">
<nz-tab *ngFor="let tab of tabs" [nzTitle]="tab.name" (nzSelect)="changeTab(tab)"> </nz-tab>
</nz-tabset>
</div>
<ng-template #extraTemplate>
<div class="d-flex align-items-center mr-sm">
<div class="mr-md">
已选择
<strong class="text-primary">{{ selectedRows.length }}</strong> 条数据
<a *ngIf="selectedRows.length > 0" (click)="st.clearCheck()" class="ml-lg">清空</a>
</div>
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()">筛选</button>
<button nz-button nzDanger (click)="exprot()" acl
[acl-ability]="[tabType === 1 ?'TICKET-ETC-BLACK_LIST-exportFreight' : 'TICKET-ETC-BLACK_LIST-exportCart']">
导出</button>
<button nz-button nz-dropdown [nzDropdownMenu]="menu" nzPlacement="bottomLeft">
更多<i nz-icon nzType="down" nzTheme="outline"></i></button>
<nz-dropdown-menu #menu="nzDropdownMenu">
<ul nz-menu>
<li nz-menu-item (click)="configAction()" acl
[acl-ability]="[tabType === 1 ? 'TICKET-ETC-BLACK_LIST-addFreight' : 'TICKET-ETC-BLACK_LIST-addCart']">
添加
</li>
<li nz-menu-item (click)="deleteAction()" acl
[acl-ability]="[tabType === 1 ? 'TICKET-ETC-BLACK_LIST-deleteFreight' : 'TICKET-ETC-BLACK_LIST-deleteCart']">
删除
</li>
</ul>
</nz-dropdown-menu>
</div>
<st
#st
[data]="tabType === 1 ? service.$api_get_etc_shipper_list : service.$api_get_etc_cart_page"
[columns]="columns"
[page]="{}"
[req]="{ process: beforeReq }"
[loading]="false"
(change)="stChange($event)"
></st>
</ng-template>
<st #st [data]="tabType === 1 ? service.$api_get_etc_shipper_list : service.$api_get_etc_cart_page"
[scroll]="{ x: '1200px',y:scrollY }" [columns]="columns" [page]="{}" [req]="{ process: beforeReq }"
[loading]="false" (change)="stChange($event)"></st>
</nz-card>

View File

@ -1,7 +1,9 @@
import { ChangeDetectionStrategy, Component, OnInit, ViewChild } from '@angular/core';
import { STComponent, STColumn, STChange, STRequestOptions } from '@delon/abc/st';
import { SFComponent, SFSchema } from '@delon/form';
import { SearchDrawerService } from '@shared';
import { NzModalService } from 'ng-zorro-antd/modal';
import { BasicTableComponent } from 'src/app/routes/commom';
import { SystemService } from 'src/app/routes/sys-setting/services/system.service';
import { TicketService } from '../../services/ticket.service';
import { AddCartComponent } from './add-cart/add-cart.component';
@ -10,14 +12,12 @@ import { AddOwnerComponent } from './add-owner/add-owner.component';
@Component({
selector: 'app-etc-blacklist',
templateUrl: './etc-blacklist.component.html',
styleUrls: ['../../../commom/less/box.less', './etc-blacklist.component.less'],
styleUrls: ['../../../commom/less/commom-table.less'],
changeDetection: ChangeDetectionStrategy.OnPush
})
export class ETCBlacklistComponent implements OnInit {
export class ETCBlacklistComponent extends BasicTableComponent {
@ViewChild('st', { static: true })
st!: STComponent;
@ViewChild('sf', { static: false })
sf!: SFComponent;
tabs = [
{
name: '货主',
@ -32,15 +32,19 @@ export class ETCBlacklistComponent implements OnInit {
];
tabType = 1;
searchSchema: SFSchema = this.initSF();
schema: SFSchema = this.initSF();
columns: STColumn[] = this.initST();
selectedRows: any[] = [];
constructor(public service: TicketService, private nzModalService: NzModalService) {}
constructor(public service: TicketService, private nzModalService: NzModalService, public searchDrawerService: SearchDrawerService) {
super(searchDrawerService);
}
ngOnInit(): void {}
search() {
this.st?.load(1);
}
beforeReq = (requestOptions: STRequestOptions) => {
if (this.sf) {
@ -63,6 +67,8 @@ export class ETCBlacklistComponent implements OnInit {
item.isActived = !item.isActived;
// this.st.load(1);
this.st.resetColumns();
console.log(this.st);
}, 500);
}
@ -181,12 +187,6 @@ export class ETCBlacklistComponent implements OnInit {
nzOkText: '确定'
});
}
/**
* 重置表单
*/
resetSF() {
this.sf.reset();
}
private initSF(): SFSchema {
return {
@ -288,12 +288,14 @@ export class ETCBlacklistComponent implements OnInit {
className: 'text-center',
buttons: [
{
text: '删除', iif: () => this.tabType === 1,
text: '删除',
iif: () => this.tabType === 1,
acl: { ability: ['TICKET-ETC-BLACK_LIST-deleteFreight'] },
click: item => this.deleteAction(item)
},
{
text: '删除', iif: () => this.tabType === 2,
text: '删除',
iif: () => this.tabType === 2,
acl: { ability: ['TICKET-ETC-BLACK_LIST-deleteCart'] },
click: item => this.deleteAction(item)
}

View File

@ -1,14 +1,4 @@
<!--
* @Description :
* @Version : 1.0
* @Author : Shiming
* @Date : 2022-04-28 20:27:08
* @LastEditors : Shiming
* @LastEditTime : 2022-04-29 14:19:10
* @FilePath : \\tms-obc-web\\src\\app\\routes\\ticket-management\\components\\etc-invoiced-list\\etc-invoiced-list.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved.
-->
<page-header-wrapper [title]="'运单开票记录'">
<!-- <page-header-wrapper [title]="'运单开票记录'">
</page-header-wrapper>
<nz-card class="search-box" nzBordered>
@ -28,9 +18,18 @@
</button>
</div>
</div>
</nz-card>
</nz-card> -->
<nz-card class="content-box" nzBordered>
<nz-card class="table-box">
<div class="header_box">
<label class="page_title"> <label class="driver">|</label> 运单开票记录</label>
<div class="mr-sm">
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()" acl
[acl-ability]="['FINANCIAL-VOUCHER-list']">筛选</button>
<button nz-button nzDanger (click)="exprot()" acl
[acl-ability]="['TICKET-ETC-INVOICE-LIST-export']">导出</button>
</div>
</div>
<st #st [data]="service.$api_get_invoice_record_page" [columns]="columns" [req]="{ process: beforeReq }"
[page]="{}" [loading]="false" [scroll]="{ x:'1200px' }">

View File

@ -2,28 +2,34 @@ import { Component, OnInit, ViewChild } from '@angular/core';
import { Router } from '@angular/router';
import { STComponent, STColumn, STChange, STRequestOptions } from '@delon/abc/st';
import { SFComponent, SFSchema } from '@delon/form';
import { SearchDrawerService } from '@shared';
import { NzModalService } from 'ng-zorro-antd/modal';
import { BasicTableComponent } from 'src/app/routes/commom';
import { TicketService } from '../../services/ticket.service';
import { TransactionDetailsComponent } from './transaction-details/transaction-details.component';
@Component({
selector: 'app-etc-invoiced-list',
templateUrl: './etc-invoiced-list.component.html',
styleUrls: ['../../../commom/less/box.less']
styleUrls: ['../../../commom/less/commom-table.less']
})
export class ETCInvoicedListComponent implements OnInit {
export class ETCInvoicedListComponent extends BasicTableComponent implements OnInit {
@ViewChild('st', { static: true })
st!: STComponent;
@ViewChild('sf', { static: false })
sf!: SFComponent;
columns: STColumn[] = this.initST();
searchSchema: SFSchema = this.initSF();
schema: SFSchema = this.initSF();
_$expand = false;
constructor(public service: TicketService, private nzModalService: NzModalService, private router: Router) {}
constructor(public service: TicketService, private nzModalService: NzModalService, public searchDrawerService: SearchDrawerService) {
super(searchDrawerService);
}
ngOnInit(): void {}
search() {
this.st?.load(1);
}
beforeReq = (requestOptions: STRequestOptions) => {
if (this.sf) {
Object.assign(requestOptions.body, {
@ -52,22 +58,6 @@ export class ETCInvoicedListComponent implements OnInit {
});
}
/**
* 重置表单
*/
resetSF() {
this.sf.reset();
this._$expand = false;
}
/**
* 伸缩查询条件
*/
expandToggle() {
this._$expand = !this._$expand;
this.sf?.setValue('/expand', this._$expand);
}
private initSF(): SFSchema {
return {
properties: {
@ -106,10 +96,7 @@ export class ETCInvoicedListComponent implements OnInit {
ui: {
widget: 'dict-select',
params: { dictKey: 'etc:invoicing:status' },
placeholder: '请选择',
visibleIf: {
expand: (value: boolean) => value
}
placeholder: '请选择'
},
default: ''
},
@ -122,10 +109,7 @@ export class ETCInvoicedListComponent implements OnInit {
searchDebounceTime: 300,
searchLoadingText: '搜索中...',
allowClear: true,
onSearch: (q: any) => this.service.getEnterpriceList({ enterpriseName: q }),
visibleIf: {
expand: (value: boolean) => value
}
onSearch: (q: any) => this.service.getEnterpriceList({ enterpriseName: q })
}
},
enterpriseInfoId: {
@ -135,9 +119,6 @@ export class ETCInvoicedListComponent implements OnInit {
widget: 'select',
placeholder: '请选择',
allowClear: true,
visibleIf: {
expand: (value: boolean) => value
},
asyncData: () => this.service.getNetworkFreightForwarder()
},
default: ''

View File

@ -1,17 +1,5 @@
<!--
* @Description :
* @Version : 1.0
* @Author : Shiming
* @Date : 2022-04-28 20:27:08
* @LastEditors : Shiming
* @LastEditTime : 2022-04-29 14:21:05
* @FilePath : \\tms-obc-web\\src\\app\\routes\\ticket-management\\components\\etc-invoiced-logs\\etc-invoiced-logs.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved.
-->
<page-header-wrapper [title]="'已开发票'">
<!-- <page-header-wrapper [title]="'已开发票'">
</page-header-wrapper>
<nz-card class="search-box" nzBordered>
<div nz-row nzGutter="8">
<div nz-col [nzXl]="_$expand ? 24 : 18" [nzLg]="24" [nzSm]="24" [nzXs]="24">
@ -30,11 +18,19 @@
</button>
</div>
</div>
</nz-card>
</nz-card> -->
<nz-card class="content-box" nzBordered>
<nz-card class="table-box">
<div class="header_box">
<label class="page_title"> <label class="driver">|</label> 已开发票</label>
<div class="mr-sm">
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()">筛选</button>
<button nz-button nzDanger (click)="exportList()" acl
[acl-ability]="['TICKET-ETC-INVOICE-LOGS-export']">导出</button>
</div>
</div>
<st #st [data]="service.$api_get_invoice_logs_page" [columns]="columns" [req]="{ process: beforeReq }" [page]="{}"
[loading]="false" [scroll]="{ x:'1200px' }">
[loading]="false" [scroll]="{ x:'1200px',y:scrollY }">
<ng-template st-row="call3No" let-item let-index="index" let-column="column">
{{item.driverName}}<br>{{item.driverCellphone}}
</ng-template>

View File

@ -1,28 +1,29 @@
import { Component, OnInit, ViewChild } from '@angular/core';
import { Component, ViewChild } from '@angular/core';
import { Router } from '@angular/router';
import { STComponent, STColumn, STChange, STRequestOptions } from '@delon/abc/st';
import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form';
import { NzModalService } from 'ng-zorro-antd/modal';
import { STComponent, STColumn, STRequestOptions } from '@delon/abc/st';
import { SFSchema, SFDateWidgetSchema } from '@delon/form';
import { SearchDrawerService } from '@shared';
import { BasicTableComponent } from 'src/app/routes/commom';
import { TicketService } from '../../services/ticket.service';
@Component({
selector: 'app-etc-invoiced-logs',
templateUrl: './etc-invoiced-logs.component.html',
styleUrls: ['../../../commom/less/box.less', '../../../commom/less/expend-but.less']
styleUrls: ['../../../commom/less/commom-table.less']
})
export class ETCInvoicedLogsComponent implements OnInit {
export class ETCInvoicedLogsComponent extends BasicTableComponent {
@ViewChild('st', { static: true })
st!: STComponent;
@ViewChild('sf', { static: false })
sf!: SFComponent;
columns: STColumn[] = this.initST();
searchSchema: SFSchema = this.initSF();
schema: SFSchema = this.initSF();
_$expand = false;
constructor(public service: TicketService, private router: Router, public searchDrawerService: SearchDrawerService) {
super(searchDrawerService);
}
constructor(public service: TicketService, private nzModalService: NzModalService, private router: Router) {}
ngOnInit(): void {}
search() {
this.st?.load(1);
}
beforeReq = (requestOptions: STRequestOptions) => {
if (this.sf) {
@ -46,22 +47,6 @@ export class ETCInvoicedLogsComponent implements OnInit {
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);
}
exportList() {
const params = { listSource: 1, pageSize: -1 };
if (this.sf) {
@ -107,10 +92,7 @@ export class ETCInvoicedLogsComponent implements OnInit {
type: 'string',
title: '车牌号',
ui: {
placeholder: '请输入',
visibleIf: {
expand: (value: boolean) => value
}
placeholder: '请输入'
}
},
exTime: {
@ -118,10 +100,7 @@ export class ETCInvoicedLogsComponent implements OnInit {
type: 'string',
ui: {
widget: 'sl-from-to-search',
format: 'yyyy-MM-dd',
visibleIf: {
expand: (value: boolean) => value
}
format: 'yyyy-MM-dd'
} as SFDateWidgetSchema
},
invoiceMakeTime: {
@ -129,20 +108,14 @@ export class ETCInvoicedLogsComponent implements OnInit {
type: 'string',
ui: {
widget: 'sl-from-to-search',
format: 'yyyy-MM-dd',
visibleIf: {
expand: (value: boolean) => value
}
format: 'yyyy-MM-dd'
} as SFDateWidgetSchema
},
sellerName: {
type: 'string',
title: '销售方',
ui: {
placeholder: '请输入',
visibleIf: {
expand: (value: boolean) => value
}
placeholder: '请输入'
}
},
ltdId: {
@ -152,9 +125,6 @@ export class ETCInvoicedLogsComponent implements OnInit {
widget: 'select',
placeholder: '请选择',
allowClear: true,
visibleIf: {
expand: (value: boolean) => value
},
asyncData: () => this.service.getNetworkFreightForwarder()
},
default: ''

View File

@ -1,14 +1,4 @@
<!--
* @Description :
* @Version : 1.0
* @Author : Shiming
* @Date : 2022-04-06 10:57:56
* @LastEditors : Shiming
* @LastEditTime : 2022-04-11 14:10:13
* @FilePath : \\tms-obc-web\\src\\app\\routes\\ticket-management\\components\\etc-invoiced-requested\\etc-invoiced-requested.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved.
-->
<page-header-wrapper [title]="'申请记录'">
<!-- <page-header-wrapper [title]="'申请记录'">
</page-header-wrapper>
<nz-card class="search-box" nzBordered>
<div nz-row nzGutter="8">
@ -28,21 +18,36 @@
</button>
</div>
</div>
</nz-card>
</nz-card> -->
<nz-card class="content-box" nzBordered>
<nz-card class="table-box">
<div class="header_box">
<label class="page_title"> <label class="driver">|</label> 申请记录</label>
<div class="d-flex align-items-center mr-sm">
<div class="mr-md">
已选择
<strong class="text-primary">{{ selectedRows.length }}</strong> 张发票
<a *ngIf="selectedRows.length > 0" (click)="st.clearCheck()" class="ml-lg">清空</a>
</div>
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()">筛选</button>
<button nz-button nzDanger (click)="exprot()" acl [acl-ability]="['TICKET-ETC-INVOICE-REQUESTED-export']">
导出</button>
<button nz-button nzType="primary" (click)="this.auditAction()" acl
[acl-ability]="['TICKET-ETC-INVOICE-REQUESTED-apply']">申请开票</button>
</div>
</div>
<div class="d-flex align-items-center mb-md mt-md">
<!-- <div class="d-flex align-items-center mb-md mt-md">
<button nz-button (click)="this.auditAction()" acl [acl-ability]="['TICKET-ETC-INVOICE-REQUESTED-apply']">申请开票</button>
<div class="ml-md">
已选择
<strong class="text-primary">{{ selectedRows.length }}</strong> 条运单
<a *ngIf="selectedRows.length > 0" (click)="st.clearCheck()" class="ml-lg">清空</a>
</div>
</div>
</div> -->
<st #st [data]="service.$api_get_apply_invoice_page" [columns]="columns" [req]="{ process: beforeReq }" [page]="{}"
[loading]="false" [scroll]="{ x:'1200px' }" (change)="stChange($event)">
[loading]="false" [scroll]="{ x:'1200px',y:scrollY }" (change)="stChange($event)">
<ng-template st-row="call1No" let-item let-index="index" let-column="column">
{{item.driverName}}<br>{{item.driverPhone}}
</ng-template>

View File

@ -2,30 +2,32 @@ import { Component, OnInit, ViewChild } from '@angular/core';
import { Router } from '@angular/router';
import { STComponent, STColumn, STChange, STRequestOptions } from '@delon/abc/st';
import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form';
import { SearchDrawerService } from '@shared';
import { NzModalService } from 'ng-zorro-antd/modal';
import { BasicTableComponent } from 'src/app/routes/commom';
import { TicketService } from '../../services/ticket.service';
@Component({
selector: 'app-etc-invoiced-requested',
templateUrl: './etc-invoiced-requested.component.html',
styleUrls: ['../../../commom/less/box.less', '../../../commom/less/expend-but.less']
styleUrls: ['../../../commom/less/commom-table.less']
})
export class ETCInvoicedRequestedComponent implements OnInit {
export class ETCInvoicedRequestedComponent extends BasicTableComponent {
@ViewChild('st', { static: true })
st!: STComponent;
@ViewChild('sf', { static: false })
sf!: SFComponent;
@ViewChild('auditModal', { static: false })
auditModal!: any;
columns: STColumn[] = this.initST();
searchSchema: SFSchema = this.initSF();
_$expand = false;
schema: SFSchema = this.initSF();
selectedRows: any[] = [];
constructor(public service: TicketService, private nzModalService: NzModalService, private router: Router) {}
constructor(public service: TicketService, private nzModalService: NzModalService, public searchDrawerService: SearchDrawerService) {
super(searchDrawerService);
}
ngOnInit(): void {}
search() {
this.st?.load(1);
}
beforeReq = (requestOptions: STRequestOptions) => {
if (this.sf) {
@ -68,22 +70,6 @@ export class ETCInvoicedRequestedComponent implements OnInit {
});
}
/**
* 重置表单
*/
resetSF() {
this.sf.reset();
this._$expand = false;
}
/**
* 伸缩查询条件
*/
expandToggle() {
this._$expand = !this._$expand;
this.sf?.setValue('/expand', this._$expand);
}
private initSF(): SFSchema {
return {
properties: {
@ -123,9 +109,6 @@ export class ETCInvoicedRequestedComponent implements OnInit {
title: '司机姓名',
ui: {
placeholder: '请输入',
visibleIf: {
expand: (value: boolean) => value
}
}
},
driverPhone: {
@ -133,9 +116,6 @@ export class ETCInvoicedRequestedComponent implements OnInit {
title: '司机手机',
ui: {
placeholder: '请输入',
visibleIf: {
expand: (value: boolean) => value
}
}
},
licenseCarNo: {
@ -143,9 +123,6 @@ export class ETCInvoicedRequestedComponent implements OnInit {
title: '车牌号',
ui: {
placeholder: '请输入',
visibleIf: {
expand: (value: boolean) => value
}
}
},
licenseBelonging: {
@ -153,9 +130,6 @@ export class ETCInvoicedRequestedComponent implements OnInit {
title: '车辆所有人',
ui: {
placeholder: '请输入',
visibleIf: {
expand: (value: boolean) => value
}
}
},
dischargePlace: {
@ -164,9 +138,6 @@ export class ETCInvoicedRequestedComponent implements OnInit {
ui: {
autocomplete: 'off',
placeholder: '请选择',
visibleIf: {
expand: (value: boolean) => value
}
}
},
loadingPlace: {
@ -175,9 +146,6 @@ export class ETCInvoicedRequestedComponent implements OnInit {
ui: {
autocomplete: 'off',
placeholder: '请选择',
visibleIf: {
expand: (value: boolean) => value
}
}
},
shipperId: {
@ -190,9 +158,6 @@ export class ETCInvoicedRequestedComponent implements OnInit {
searchLoadingText: '搜索中...',
allowClear: true,
onSearch: (q: any) => this.service.getEnterpriceList({ enterpriseName: q }),
visibleIf: {
expand: (value: boolean) => value
}
}
},
enterpriseInfoName: {
@ -202,9 +167,6 @@ export class ETCInvoicedRequestedComponent implements OnInit {
widget: 'select',
placeholder: '请选择',
allowClear: true,
visibleIf: {
expand: (value: boolean) => value
},
asyncData: () => this.service.getNetworkFreightForwarder()
},
default: ''

View File

@ -1,4 +1,4 @@
<page-header-wrapper title="快递信息">
<!-- <page-header-wrapper title="快递信息">
</page-header-wrapper>
<nz-card class="search-box">
@ -12,13 +12,19 @@
<button nz-button (click)="resetSF()">重置</button>
</div>
</div>
</nz-card>
</nz-card> -->
<nz-card class="content-box">
<div class="mt-md mb-sm">
<button nz-button nzType="primary" (click)="printOrder()" acl [acl-ability]="['TICKET-EXPRESS-INFO-print']">打印面单</button>
<nz-card class="table-box">
<div class="header_box">
<label class="page_title"> <label class="driver">|</label> 快递信息</label>
<div class="mr-sm">
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()" acl
[acl-ability]="['FINANCIAL-VOUCHER-list']">筛选</button>
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="openDrawer()" acl
[acl-ability]="['TICKET-EXPRESS-INFO-print']">筛选</button>
</div>
<st #st [data]="url" [columns]="columns" [req]="{ process:beforeReq }" [loading]="false" [page]="{}" [scroll]="{x:'1200px'}"
(change)="stChange($event)"></st>
</div>
<st #st [data]="url" [columns]="columns" [req]="{ process:beforeReq }" [loading]="false" [page]="{}"
[scroll]="{x:'1200px',y:scrollY}" (change)="stChange($event)"></st>
</nz-card>

View File

@ -1,34 +1,24 @@
/*
* @Description :
* @Version : 1.0
* @Author : Shiming
* @Date : 2022-04-28 20:27:22
* @LastEditors : Shiming
* @LastEditTime : 2022-04-29 14:14:59
* @FilePath : \\tms-obc-web\\src\\app\\routes\\ticket-management\\components\\express-info\\express-info.component.ts
* Copyright (C) 2022 huzhenhong. All rights reserved.
*/
import { Component, OnInit, ViewChild } from '@angular/core';
import { STComponent, STColumn, STChange, STRequestOptions } from '@delon/abc/st';
import { SFComponent, SFDateWidgetSchema, SFSchema } from '@delon/form';
import { SearchDrawerService } from '@shared';
import { NzModalService } from 'ng-zorro-antd/modal';
import { BasicTableComponent } from 'src/app/routes/commom';
import { TicketService } from '../../services/ticket.service';
import { ExpressDetailModalComponent } from './express-detail-modal/express-detail-modal.component';
@Component({
selector: 'app-express-info',
templateUrl: './express-info.component.html',
styleUrls: ['../../../commom/less/box.less']
styleUrls: ['../../../commom/less/commom-table.less']
})
export class ExpressInfoComponent implements OnInit {
export class ExpressInfoComponent extends BasicTableComponent {
@ViewChild('st', { static: true })
st!: STComponent;
@ViewChild('sf', { static: false })
sf!: SFComponent;
url = `/api/fcc/ficoExpressH/getListPage`;
searchSchema: SFSchema = {
schema: SFSchema = {
properties: {
expressCode: {
title: '快递单号',
@ -88,12 +78,16 @@ export class ExpressInfoComponent implements OnInit {
selectedRows: any[] = [];
reqParams = { pageIndex: 1, pageSize: 10 };
constructor(public service: TicketService, private nzModalService: NzModalService) {}
constructor(public service: TicketService, private nzModalService: NzModalService, public searchDrawerService: SearchDrawerService) {
super(searchDrawerService);
}
ngOnInit(): void {}
search() {
this.st?.load(1);
}
beforeReq = (requestOptions: STRequestOptions) => {
if (this.sf) {
Object.assign(requestOptions.body, {
@ -162,10 +156,4 @@ export class ExpressInfoComponent implements OnInit {
}
});
}
/**
* 重置表单
*/
resetSF() {
this.sf.reset();
}
}

View File

@ -1,4 +1,4 @@
<page-header-wrapper [title]="'进项发票'">
<!-- <page-header-wrapper [title]="'进项发票'">
</page-header-wrapper>
<nz-card class="search-box" nzBordered>
@ -19,20 +19,36 @@
</button>
</div>
</div>
</nz-card>
</nz-card> -->
<nz-card class="content-box" nzBordered>
<nz-card class="table-box">
<div class="header_box">
<label class="page_title"> <label class="driver">|</label> 进项发票</label>
<div class="d-flex align-items-center mr-sm">
<div class="mr-md">
已选择
<strong class="text-primary">{{ selectedRows.length }}</strong> 张发票
<a *ngIf="selectedRows.length > 0" (click)="st.clearCheck()" class="ml-lg">清空</a>
</div>
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()" acl
[acl-ability]="['FINANCIAL-VOUCHER-list']">筛选</button>
<button nz-button nzDanger acl [acl-ability]="['VEHICLE-LIST-search']"> 导出</button>
<button nz-button (click)="this.addInvoice()" nzType="primary" acl
[acl-ability]="['TICKET-INPUT-INVOICE-addInvoice']">添加发票</button>
</div>
</div>
<div class="d-flex align-items-center mb-md mt-md">
<button nz-button (click)="this.addInvoice()" nzType="primary" acl [acl-ability]="['TICKET-INPUT-INVOICE-addInvoice']">添加发票</button>
<!-- <div class="d-flex align-items-center mb-md mt-md">
<button nz-button (click)="this.addInvoice()" nzType="primary" acl
[acl-ability]="['TICKET-INPUT-INVOICE-addInvoice']">添加发票</button>
<div class="ml-md">
已选择
<strong class="text-primary">{{ selectedRows.length }}</strong> 张发票
<a *ngIf="selectedRows.length > 0" (click)="st.clearCheck()" class="ml-lg">清空</a>
</div>
</div>
</div> -->
<st #st [data]="service.$api_get_input_invoice_page" [columns]="columns" [req]="{ process: beforeReq }" [page]="{}"
[loading]="false" [scroll]="{ x:'1200px' }" (change)="stChange($event)">
[loading]="false" [scroll]="{ x:'1200px',y:scrollY }" (change)="stChange($event)">
</st>
</nz-card>

View File

@ -1,32 +1,39 @@
import { Component, OnInit, ViewChild } from '@angular/core';
import { Component, ViewChild } from '@angular/core';
import { Router } from '@angular/router';
import { STComponent, STColumn, STRequestOptions, STChange } from '@delon/abc/st';
import { SFComponent, SFDateWidgetSchema, SFSchema } from '@delon/form';
import { SFDateWidgetSchema, SFSchema } from '@delon/form';
import { SearchDrawerService } from '@shared';
import { NzModalService } from 'ng-zorro-antd/modal';
import { BasicTableComponent } from 'src/app/routes/commom';
import { TicketService } from '../../services/ticket.service';
import { AddCollectionInvoiceModalComponent } from './add-collection-invoice-modal/add-collection-invoice-modal.component';
@Component({
selector: 'app-input-invoice',
templateUrl: './input-invoice.component.html',
styleUrls: ['../../../commom/less/box.less', '../../../commom/less/expend-but.less']
styleUrls: ['../../../commom/less/commom-table.less']
})
export class InputInvoiceComponent implements OnInit {
export class InputInvoiceComponent extends BasicTableComponent {
@ViewChild('st', { static: true })
st!: STComponent;
@ViewChild('sf', { static: false })
sf!: SFComponent;
@ViewChild('auditModal', { static: false })
auditModal!: any;
columns: STColumn[] = this.initST();
searchSchema: SFSchema = this.initSF();
_$expand = false;
schema: SFSchema = this.initSF();
selectedRows: any[] = [];
constructor(public service: TicketService, private nzModalService: NzModalService, private router: Router) {}
constructor(
public service: TicketService,
private nzModalService: NzModalService,
private router: Router,
public searchDrawerService: SearchDrawerService
) {
super(searchDrawerService);
}
ngOnInit(): void {}
search() {
this.st?.load(1);
}
beforeReq = (requestOptions: STRequestOptions) => {
if (this.sf) {
@ -66,22 +73,6 @@ export class InputInvoiceComponent implements OnInit {
});
}
/**
* 重置表单
*/
resetSF() {
this.sf.reset();
this._$expand = false;
}
/**
* 伸缩查询条件
*/
expandToggle() {
this._$expand = !this._$expand;
this.sf?.setValue('/expand', this._$expand);
}
private initSF(): SFSchema {
return {
properties: {
@ -127,10 +118,7 @@ export class InputInvoiceComponent implements OnInit {
],
ui: {
widget: 'select',
placeholder: '请选择',
visibleIf: {
expand: (value: boolean) => value
}
placeholder: '请选择'
},
default: ''
},
@ -141,10 +129,7 @@ export class InputInvoiceComponent implements OnInit {
widget: 'select',
placeholder: '请选择',
allowClear: true,
asyncData: () => this.service.getCRMCustomerId(),
visibleIf: {
expand: (value: boolean) => value
}
asyncData: () => this.service.getCRMCustomerId()
}
},
createtime: {
@ -152,10 +137,7 @@ export class InputInvoiceComponent implements OnInit {
type: 'string',
ui: {
widget: 'sl-from-to-search',
format: 'yyyy-MM-dd',
visibleIf: {
expand: (value: boolean) => value
}
format: 'yyyy-MM-dd'
} as SFDateWidgetSchema
},
sts: {
@ -168,10 +150,7 @@ export class InputInvoiceComponent implements OnInit {
],
ui: {
widget: 'select',
placeholder: '请选择',
visibleIf: {
expand: (value: boolean) => value
}
placeholder: '请选择'
},
default: ''
},
@ -180,40 +159,28 @@ export class InputInvoiceComponent implements OnInit {
title: '发票日期',
ui: {
widget: 'sl-from-to-search',
format: 'yyyy-MM-dd',
visibleIf: {
expand: (value: boolean) => value
}
format: 'yyyy-MM-dd'
}
},
remarks: {
type: 'string',
title: '收票备注',
ui: {
placeholder: '请输入',
visibleIf: {
expand: (value: boolean) => value
}
placeholder: '请输入'
}
},
billCode: {
type: 'string',
title: '订单号',
ui: {
placeholder: '请输入',
visibleIf: {
expand: (value: boolean) => value
}
placeholder: '请输入'
}
},
feecode: {
type: 'string',
title: '费用号',
ui: {
placeholder: '请输入',
visibleIf: {
expand: (value: boolean) => value
}
placeholder: '请输入'
}
}
}

View File

@ -1,16 +1,4 @@
<!--
* @Description :
* @Version : 1.0
* @Author : Shiming
* @Date : 2022-01-21 15:39:30
* @LastEditors : Shiming
* @LastEditTime : 2022-04-29 13:55:16
* @FilePath : \\tms-obc-web\\src\\app\\routes\\ticket-management\\components\\invoice-requested\\invoice-requested.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved.
-->
<page-header-wrapper [title]="'开票申请'"> </page-header-wrapper>
<!-- <page-header-wrapper [title]="'开票申请'"> </page-header-wrapper>
<nz-card class="search-box" nzBordered>
<div nz-row nzGutter="8">
<div nz-col [nzXl]="_$expand ? 24 : 18" [nzLg]="24" [nzSm]="24" [nzXs]="24">
@ -27,9 +15,12 @@
</button>
</div>
</div>
</nz-card>
<nz-card class="content-box" nzBordered>
</nz-card> -->
<nz-card class="table-box">
<div class="tab_header">
<label class="page_title">
<label class="driver">|</label>
开票申请</label>
<nz-tabset [nzTabBarExtraContent]="extraTemplate">
<nz-tab nzTitle="待受理" (nzClick)="selectChange('1')"></nz-tab>
<nz-tab nzTitle="处理中" (nzClick)="selectChange('2')"></nz-tab>
@ -38,8 +29,10 @@
<nz-tab nzTitle="已受理" (nzClick)="selectChange('3')"></nz-tab>
<nz-tab nzTitle="全部" (nzClick)="selectChange(null)"></nz-tab>
</nz-tabset>
</div>
<ng-template #extraTemplate>
<div class="d-flex align-items-center"
<div class="d-flex align-items-center mr-sm"
*ngIf="resourceStatus==='1'|| resourceStatus==='2' || resourceStatus==='3' || !resourceStatus">
<div class="mr-md">
已选择
@ -47,17 +40,35 @@
<strong class="text-red">{{ totalCallNo }}</strong>
<a *ngIf="totalCallNo > 0" (click)="st.clearCheck();totalCallNo=0" class="ml-lg">清空</a>
</div>
<button nz-button *ngIf="resourceStatus==='1' || !resourceStatus" (click)="this.batchRequested()" acl [acl-ability]="['TICKET-INVOICE-REQUESTED-userApply']">批量受理</button>
<button nz-button *ngIf="resourceStatus==='1' || !resourceStatus"
(click)="this.rejectAction(selectedRows)" acl [acl-ability]="['TICKET-INVOICE-REQUESTED-reject']">驳回</button>
<button nz-button *ngIf="resourceStatus !=='4' && resourceStatus !=='5'"
(click)="changeAddress(selectedRows)" acl [acl-ability]="['VEHICLE-LIST-search']">修改地址</button>
<button nz-button *ngIf="resourceStatus==='3' || !resourceStatus" (click)="printOrder(selectedRows)" acl [acl-ability]="['VEHICLE-LIST-search']">快递下单</button>
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()">筛选</button>
<button nz-button nzDanger (click)="exprot()" acl [acl-ability]="['TICKET-INVOICE-REQUESTED-export']"> 导出</button>
<button nz-button nz-dropdown [nzDropdownMenu]="menu" nzPlacement="bottomLeft">
更多<i nz-icon nzType="down" nzTheme="outline"></i></button>
<nz-dropdown-menu #menu="nzDropdownMenu">
<ul nz-menu>
<li nz-menu-item *ngIf="resourceStatus==='1' || !resourceStatus" (click)="this.batchRequested()" acl
[acl-ability]="['TICKET-INVOICE-REQUESTED-userApply']">
批量受理
</li>
<li nz-menu-item *ngIf="resourceStatus==='1' || !resourceStatus" (click)="this.rejectAction(selectedRows)" acl
[acl-ability]="['TICKET-INVOICE-REQUESTED-reject']">
驳回
</li>
<li nz-menu-item *ngIf="resourceStatus !=='4' && resourceStatus !=='5'" (click)="changeAddress(selectedRows)"
acl [acl-ability]="['VEHICLE-LIST-search']">
修改地址
</li>
<li nz-menu-item *ngIf="resourceStatus==='3' || !resourceStatus" (click)="printOrder(selectedRows)" acl
[acl-ability]="['VEHICLE-LIST-search']">
快递下单
</li>
</ul>
</nz-dropdown-menu>
</div>
</ng-template>
<st #st [data]="service.$api_get_invoice_requested_page" [columns]="columns" [req]="{ process: beforeReq }"
[page]="{}" [res]="{ process: afterRes }" [loading]="false" [scroll]="{ x: '1200px' }" (change)="stChange($event)">
[page]="{}" [res]="{ process: afterRes }" [loading]="false" [scroll]="{ x: '1200px',y:scrollY }" (change)="stChange($event)">
<ng-template st-row="vatappcode" let-item let-index="index" let-column="column">
{{ item.vatappcode }} <br />
<label class="text-primary">{{item.stsLabel}}</label>

View File

@ -1,7 +0,0 @@
:host::ng-deep {
.ant-tabs-tab-btn {
padding-left : 16px;
padding-right: 16px;
}
}

View File

@ -1,11 +1,11 @@
import { query } from '@angular/animations';
import { CurrencyPipe } from '@angular/common';
import { Component, ViewChild } from '@angular/core';
import { Router } from '@angular/router';
import { STComponent, STColumn, STChange, STRequestOptions } from '@delon/abc/st';
import { SFComponent, SFSchema, SFDateWidgetSchema, SFUISchema } from '@delon/form';
import { SFSchema, SFDateWidgetSchema } from '@delon/form';
import { SearchDrawerService } from '@shared';
import { NzModalService } from 'ng-zorro-antd/modal';
import { delay } from 'rxjs/operators';
import { BasicTableComponent } from 'src/app/routes/commom';
import { TicketService } from '../../services/ticket.service';
import { PrintOrderModalComponent } from './print-order-modal/print-order-modal.component';
@ -15,26 +15,33 @@ import { UpdateAddressModalComponent } from './update-address-modal/update-addre
@Component({
selector: 'app-invoice-requested',
templateUrl: './invoice-requested.component.html',
styleUrls: ['./invoice-requested.component.less', '../../../commom/less/box.less']
styleUrls: ['../../../commom/less/commom-table.less']
})
export class InvoiceRequestedComponent {
export class InvoiceRequestedComponent extends BasicTableComponent {
@ViewChild('st', { static: true })
st!: STComponent;
@ViewChild('sf', { static: false })
sf!: SFComponent;
@ViewChild('rejectModal', { static: false })
rejectModal!: any;
resourceStatus: any = '1';
columns: STColumn[] = this.initST();
searchSchema: SFSchema = this.initSF();
_$expand = false;
schema: SFSchema = this.initSF();
totalCallNo = 0;
selectedRows: any[] = [];
rejectReason = '';
constructor(public service: TicketService, private nzModalService: NzModalService, private router: Router) {}
constructor(
public service: TicketService,
private nzModalService: NzModalService,
private router: Router,
public searchDrawerService: SearchDrawerService
) {
super(searchDrawerService);
}
search() {
this.st?.load(1);
}
beforeReq = (requestOptions: STRequestOptions) => {
if (this.resourceStatus) {
@ -300,22 +307,6 @@ export class InvoiceRequestedComponent {
}
}
/**
* 重置表单
*/
resetSF() {
this.sf.reset();
this._$expand = false;
}
/**
* 伸缩查询条件
*/
expandToggle() {
this._$expand = !this._$expand;
this.sf?.setValue('/expand', this._$expand);
}
// 导出
exprot() {
this.service.exportStart({ ...this.sf?.value, pageSize: -1 }, this.service.$api_export_invoice_requested_page);
@ -357,9 +348,6 @@ export class InvoiceRequestedComponent {
default: '',
ui: {
widget: 'select',
visibleIf: {
expand: (value: boolean) => value
},
asyncData: () => this.service.getEnterpriseProject()
}
},
@ -369,9 +357,6 @@ export class InvoiceRequestedComponent {
ui: {
widget: 'select',
placeholder: '请选择',
visibleIf: {
expand: (value: boolean) => value
},
allowClear: true,
asyncData: () => this.service.getNetworkFreightForwarder()
},
@ -379,12 +364,7 @@ export class InvoiceRequestedComponent {
},
otherremarks: {
type: 'string',
title: '其他需求',
ui: {
visibleIf: {
expand: (value: boolean) => value
}
}
title: '其他需求'
},
createTime: {
title: '申请时间',
@ -393,10 +373,7 @@ export class InvoiceRequestedComponent {
widget: 'sl-from-to-search',
format: 'yyyy-MM-dd',
placeholder: '请选择',
nzShowTime: true,
visibleIf: {
expand: (value: boolean) => value
}
nzShowTime: true
} as SFDateWidgetSchema
},
isdetail: {
@ -409,10 +386,7 @@ export class InvoiceRequestedComponent {
],
ui: {
widget: 'select',
placeholder: '请选择',
visibleIf: {
expand: (value: boolean) => value
}
placeholder: '请选择'
},
default: ''
},
@ -425,10 +399,7 @@ export class InvoiceRequestedComponent {
searchDebounceTime: 300,
searchLoadingText: '搜索中...',
allowClear: true,
onSearch: (q: any) => this.service.getEnterpriceList({ enterpriseName: q }),
visibleIf: {
expand: (value: boolean) => value
}
onSearch: (q: any) => this.service.getEnterpriceList({ enterpriseName: q })
}
}
}

View File

@ -1,14 +1,4 @@
<!--
* @Description :
* @Version : 1.0
* @Author : Shiming
* @Date : 2022-01-19 20:19:59
* @LastEditors : Shiming
* @LastEditTime : 2022-01-26 14:27:32
* @FilePath : \\tms-obc-web\\src\\app\\routes\\ticket-management\\components\\invoiced-list\\invoiced-list.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved.
-->
<page-header-wrapper [title]="'已开发票'"> </page-header-wrapper>
<!-- <page-header-wrapper [title]="'已开发票'"> </page-header-wrapper>
<nz-card class="search-box" nzBordered>
<div nz-row nzGutter="8">
@ -19,17 +9,21 @@
<div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" class="text-right">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="st?.load(1)">查询</button>
<button nz-button (click)="resetSF()">重置</button>
<!-- <button nz-button> 导出</button> -->
<button nz-button nzType="link" (click)="expandToggle()">
{{ !_$expand ? '展开' : '收起' }}
<i nz-icon [nzType]="!_$expand ? 'down' : 'up'"></i>
</button>
</div>
</div>
</nz-card>
</nz-card> -->
<nz-card nzBordered>
<div class="d-flex align-items-center mb-md">
<nz-card class="table-box">
<div class="header_box">
<label class="page_title"> <label class="driver">|</label> 已开发票</label>
<div class="mr-sm">
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()">筛选</button>
</div>
</div>
<!-- <button nz-button (click)="this.deletedInvoice()">作废发票</button>
<button nz-button (click)="this.invoiceHongChong()">发票红冲</button> -->
<!-- <div class="ml-md">
@ -38,10 +32,9 @@
<strong class="text-red">{{ totalCallNo }}</strong>
<a *ngIf="totalCallNo > 0" (click)="st.clearCheck()" class="ml-lg">清空</a>
</div> -->
</div>
<st #st [data]="service.$api_get_invoice_page" [columns]="columns" [req]="{ process: beforeReq }" [page]="{}"
[loading]="false" [scroll]="{ x: '1200px' }" (change)="stChange($event)">
[loading]="false" [scroll]="{ x: '1200px',y:scrollY }" (change)="stChange($event)">
<ng-template st-row="no" let-item let-index="index">
{{ item.no }}
<a>预览发票</a>

View File

@ -1,27 +1,24 @@
import { CurrencyPipe } from '@angular/common';
import { Component, OnInit, ViewChild } from '@angular/core';
import { Component, ViewChild } from '@angular/core';
import { Router } from '@angular/router';
import { STComponent, STColumn, STChange, STRequestOptions } from '@delon/abc/st';
import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form';
import { SFSchema, SFDateWidgetSchema } from '@delon/form';
import { SearchDrawerService } from '@shared';
import { NzModalService } from 'ng-zorro-antd/modal';
import { BasicTableComponent } from 'src/app/routes/commom';
import { TicketService } from '../../services/ticket.service';
@Component({
selector: 'app-invoiced-list',
templateUrl: './invoiced-list.component.html',
styleUrls: ['../../../commom/less/box.less', '../../../commom/less/expend-but.less']
styleUrls: ['../../../commom/less/commom-table.less']
})
export class InvoicedListComponent implements OnInit {
export class InvoicedListComponent extends BasicTableComponent {
@ViewChild('st', { static: true })
st!: STComponent;
@ViewChild('sf', { static: false })
sf!: SFComponent;
@ViewChild('logosticsLogsModal', { static: false })
logosticsLogsModal!: any;
columns: STColumn[] = this.initST();
searchSchema: SFSchema = this.initSF();
_$expand = false;
schema: SFSchema = this.initSF();
selectedRows: any[] = [];
totalCallNo = 0;
@ -34,12 +31,21 @@ export class InvoicedListComponent implements OnInit {
@ViewChild('requestedModal', { static: false })
requestedModal!: any;
openInfo: any = { expresscompany: null, expressno: null };
constructor(public service: TicketService, private nzModalService: NzModalService, private router: Router) {}
constructor(
public service: TicketService,
private nzModalService: NzModalService,
private router: Router,
public searchDrawerService: SearchDrawerService
) {
super(searchDrawerService);
}
ngOnInit(): void {}
search() {
this.st?.load(1);
}
beforeReq = (requestOptions: STRequestOptions) => {
Object.assign(requestOptions.body,{sts: '3'})
Object.assign(requestOptions.body, { sts: '3' });
if (this.sf) {
Object.assign(requestOptions.body, {
...this.sf?.value,
@ -49,7 +55,7 @@ export class InvoicedListComponent implements OnInit {
}
});
}
return requestOptions ;
return requestOptions;
};
stChange(e: STChange): void {
@ -167,22 +173,6 @@ export class InvoicedListComponent implements OnInit {
});
}
/**
* 重置表单
*/
resetSF() {
this.sf.reset();
this._$expand = false;
}
/**
* 伸缩查询条件
*/
expandToggle() {
this._$expand = !this._$expand;
this.sf?.setValue('/expand', this._$expand);
}
private initSF(): SFSchema {
return {
properties: {
@ -220,20 +210,14 @@ export class InvoicedListComponent implements OnInit {
widget: 'sl-from-to-search',
format: 'yyyy-MM-dd',
placeholder: '请选择',
nzShowTime: true,
visibleIf: {
expand: (value: boolean) => value
}
nzShowTime: true
} as SFDateWidgetSchema
},
artoname: {
type: 'string',
title: '购买人',
ui: {
placeholder: '请输入',
visibleIf: {
expand: (value: boolean) => value
}
placeholder: '请输入'
}
},
ltdId: {
@ -243,9 +227,6 @@ export class InvoicedListComponent implements OnInit {
widget: 'select',
placeholder: '请选择',
allowClear: true,
visibleIf: {
expand: (value: boolean) => value
},
asyncData: () => this.service.getNetworkFreightForwarder({}, true)
},
default: ''
@ -254,10 +235,7 @@ export class InvoicedListComponent implements OnInit {
type: 'string',
title: '分票编号',
ui: {
placeholder: '请输入',
visibleIf: {
expand: (value: boolean) => value
}
placeholder: '请输入'
}
},
invoicetype: {
@ -269,10 +247,7 @@ export class InvoicedListComponent implements OnInit {
],
ui: {
widget: 'select',
placeholder: '请选择',
visibleIf: {
expand: (value: boolean) => value
}
placeholder: '请选择'
},
default: ''
}