Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop
This commit is contained in:
@ -36,7 +36,9 @@
|
||||
{{ item.orderRefundCode }} <br> {{ item.refundStatusLabel }}
|
||||
</ng-template>
|
||||
<ng-template st-row="refundAmount" let-item let-index="index" let-column="column">
|
||||
{{ item.refundAmount |currency }}
|
||||
<ng-container *ngFor="let cost of item.billRefundDetailVOS">
|
||||
{{cost.costName}}:{{ cost.refundAmount |currency }}<br>
|
||||
</ng-container>
|
||||
</ng-template>
|
||||
<ng-template st-row="billRefundPaymentVOS" let-item let-index="index" let-column="column">
|
||||
<ng-container *ngFor="let bill of item.billRefundPaymentVOS">
|
||||
|
||||
@ -246,8 +246,8 @@ export class RefundRecordComponent implements OnInit {
|
||||
private initST(): STColumn[] {
|
||||
return [
|
||||
{ title: '退款单号', render: 'orderRefundCode', width: 180 },
|
||||
{ title: '退款类型', index: 'refundType', width: 120 },
|
||||
{ title: '退款金额', render: 'refundAmount', width: 120 },
|
||||
{ title: '退款类型', index: 'refundTypeLabel', width: 120 },
|
||||
{ title: '退款金额', render: 'refundAmount', className: 'text-right', width: 160 },
|
||||
{ title: '退款时间', index: 'applyTime', width: 160 },
|
||||
{ title: '货主', index: 'shipperId', width: 150 },
|
||||
{ title: '所属项目', index: 'enterpriseProjectName', width: 140 },
|
||||
@ -273,6 +273,7 @@ export class RefundRecordComponent implements OnInit {
|
||||
},
|
||||
{
|
||||
text: '重新发起',
|
||||
iif: item => item.refundStatus === '5',
|
||||
click: item => this.reApply(item)
|
||||
}
|
||||
// {
|
||||
|
||||
@ -1,9 +0,0 @@
|
||||
<page-header [action]="phActionTpl">
|
||||
<ng-template #phActionTpl>
|
||||
<button (click)="add()" nz-button nzType="primary">新建</button>
|
||||
</ng-template>
|
||||
</page-header>
|
||||
<nz-card>
|
||||
<sf mode="search" [schema]="searchSchema" (formSubmit)="st.reset($event)" (formReset)="st.reset($event)"></sf>
|
||||
<st #st [data]="url" [columns]="columns"></st>
|
||||
</nz-card>
|
||||
@ -1,24 +0,0 @@
|
||||
import { waitForAsync, ComponentFixture, TestBed } from '@angular/core/testing';
|
||||
import { PartnerBusinessStatisticsIndexComponent } from './index.component';
|
||||
|
||||
describe('PartnerBusinessStatisticsIndexComponent', () => {
|
||||
let component: PartnerBusinessStatisticsIndexComponent;
|
||||
let fixture: ComponentFixture<PartnerBusinessStatisticsIndexComponent>;
|
||||
|
||||
beforeEach(waitForAsync(() => {
|
||||
TestBed.configureTestingModule({
|
||||
declarations: [PartnerBusinessStatisticsIndexComponent]
|
||||
})
|
||||
.compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
fixture = TestBed.createComponent(PartnerBusinessStatisticsIndexComponent);
|
||||
component = fixture.componentInstance;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should create', () => {
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
});
|
||||
@ -1,45 +0,0 @@
|
||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||
import { STColumn, STComponent } from '@delon/abc/st';
|
||||
import { SFSchema } from '@delon/form';
|
||||
import { ModalHelper, _HttpClient } from '@delon/theme';
|
||||
|
||||
@Component({
|
||||
selector: 'app-partner-business-statistics-index',
|
||||
templateUrl: './index.component.html',
|
||||
})
|
||||
export class PartnerBusinessStatisticsIndexComponent implements OnInit {
|
||||
url = `/user`;
|
||||
searchSchema: SFSchema = {
|
||||
properties: {
|
||||
no: {
|
||||
type: 'string',
|
||||
title: '编号'
|
||||
}
|
||||
}
|
||||
};
|
||||
@ViewChild('st') private readonly st!: STComponent;
|
||||
columns: STColumn[] = [
|
||||
{ title: '编号', index: 'no' },
|
||||
{ title: '调用次数', type: 'number', index: 'callNo' },
|
||||
{ title: '头像', type: 'img', width: '50px', index: 'avatar' },
|
||||
{ title: '时间', type: 'date', index: 'updatedAt' },
|
||||
{
|
||||
title: '',
|
||||
buttons: [
|
||||
// { text: '查看', click: (item: any) => `/form/${item.id}` },
|
||||
// { text: '编辑', type: 'static', component: FormEditComponent, click: 'reload' },
|
||||
]
|
||||
}
|
||||
];
|
||||
|
||||
constructor(private http: _HttpClient, private modal: ModalHelper) { }
|
||||
|
||||
ngOnInit(): void { }
|
||||
|
||||
add(): void {
|
||||
// this.modal
|
||||
// .createStatic(FormEditComponent, { i: { id: 0 } })
|
||||
// .subscribe(() => this.st.reload());
|
||||
}
|
||||
|
||||
}
|
||||
@ -1,12 +0,0 @@
|
||||
import { NgModule } from '@angular/core';
|
||||
import { RouterModule, Routes } from '@angular/router';
|
||||
import { PartnerBusinessStatisticsIndexComponent } from './business-statistics/components/index/index.component';
|
||||
|
||||
const routes: Routes = [
|
||||
{ path: 'index', component: PartnerBusinessStatisticsIndexComponent }];
|
||||
|
||||
@NgModule({
|
||||
imports: [RouterModule.forChild(routes)],
|
||||
exports: [RouterModule]
|
||||
})
|
||||
export class PartnerRoutingModule { }
|
||||
@ -1,13 +0,0 @@
|
||||
import { NgModule } from '@angular/core';
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { SharedModule } from '@shared';
|
||||
import { PartnerRoutingModule } from './partner-routing.module';
|
||||
import { PartnerBusinessStatisticsIndexComponent } from './business-statistics/components/index/index.component';
|
||||
|
||||
const COMPONENTS: any[] = [
|
||||
PartnerBusinessStatisticsIndexComponent];
|
||||
@NgModule({
|
||||
declarations: [...COMPONENTS],
|
||||
imports: [CommonModule, PartnerRoutingModule, SharedModule]
|
||||
})
|
||||
export class PartnerModule { }
|
||||
@ -67,7 +67,6 @@ const routes: Routes = [
|
||||
loadChildren: () => import('./contract-management/contract-management.module').then(m => m.ContractManagementManagementModule)
|
||||
},
|
||||
{ path: 'menu-management', loadChildren: () => import('./menu-manager/menu-manager.module').then(m => m.MenuManagerModule) },
|
||||
{ path: 'partner', loadChildren: () => import('./partner/partner.module').then(m => m.PartnerModule) },
|
||||
{
|
||||
path: 'download',
|
||||
loadChildren: () => import('./download/download.module').then(m => m.DownloadModule)
|
||||
|
||||
@ -36,16 +36,18 @@
|
||||
<strong class="text-red">{{totalCallNo }}</strong>
|
||||
<a *ngIf="totalCallNo > 0" (click)="st.clearCheck()" class="ml-lg">清空</a>
|
||||
</div>
|
||||
<button nz-button (click)="this.batchPush()">推送开票</button>
|
||||
<button nz-button (click)="this.batchRemove(selectedRows)">移除</button>
|
||||
<button nz-button (click)="this.batchWithdraw(selectedRows)">撤回</button>
|
||||
<button nz-button *ngIf="resourceStatus===1 || !resourceStatus" (click)="this.batchPush()">推送开票</button>
|
||||
<!-- <button nz-button *ngIf="resourceStatus===1 || !resourceStatus"
|
||||
(click)="this.batchRemove(selectedRows)">移除</button>
|
||||
<button nz-button *ngIf="resourceStatus===2 || !resourceStatus"
|
||||
(click)="this.batchWithdraw(selectedRows)">撤回</button> -->
|
||||
</div>
|
||||
</ng-template>
|
||||
|
||||
|
||||
<st #st [scroll]="{ x: '2000px' }" [data]="service.$api_ficoVatinvHList" [columns]="columns"
|
||||
[req]="{process: beforeReq }" [res]="{process:afterRes }" [loading]="service.http.loading">
|
||||
|
||||
[req]="{process: beforeReq }" [res]="{process:afterRes }" [loading]="service.http.loading"
|
||||
(change)="stChange($event)">
|
||||
<ng-template st-row="vatinvcode" let-item let-index="index" let-column="column">
|
||||
{{ item.vatinvcode }} <br>
|
||||
<label class="text-primary" *ngIf="item.sts == '1'">待处理</label>
|
||||
|
||||
@ -23,7 +23,7 @@ export class CancellationInvoiceComponent implements OnInit {
|
||||
requestedModal!: any;
|
||||
columns: STColumn[] = this.initST();
|
||||
searchSchema: SFSchema = this.initSF();
|
||||
resourceStatus = '';
|
||||
resourceStatus: any = '';
|
||||
_$expand = false;
|
||||
|
||||
selectedRows: any[] = [];
|
||||
@ -56,6 +56,15 @@ export class CancellationInvoiceComponent implements OnInit {
|
||||
return data.map(node => ({ ...node, disabled: node.sts === '3' }));
|
||||
};
|
||||
|
||||
stChange(e: STChange): void {
|
||||
switch (e.type) {
|
||||
case 'checkbox':
|
||||
this.selectedRows = e.checkbox!;
|
||||
this.totalCallNo = this.selectedRows.reduce((total, cv) => total + cv.vatmoney, 0).toFixed(2);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
selectChange(e: any) {
|
||||
this.resourceStatus = e;
|
||||
this.initST();
|
||||
@ -103,17 +112,32 @@ export class CancellationInvoiceComponent implements OnInit {
|
||||
|
||||
/**
|
||||
* 批量推送发票
|
||||
* @param item
|
||||
*/
|
||||
batchPush(item?: any) {
|
||||
if (this.selectedRows?.length <= 0 && !item) {
|
||||
batchPush() {
|
||||
if (this.selectedRows?.length <= 0) {
|
||||
this.service.msgSrv.warning('请选择开票申请');
|
||||
return;
|
||||
}
|
||||
if (this.selectedRows.find(item => item.sts !== '1')) {
|
||||
this.service.msgSrv.warning('请勿选择非待处理申请');
|
||||
return;
|
||||
}
|
||||
this.nzModalService.warning({
|
||||
nzTitle: '确定将所选待处理开票申请推送开票?',
|
||||
nzContent: '推送开票后发票信息不可修改,待系统开票完成后会自动返回开票结果',
|
||||
nzOnOk: () => {}
|
||||
nzOnOk: () => {
|
||||
this.service
|
||||
.request(
|
||||
this.service.$api_batch_push_invoic,
|
||||
this.selectedRows.map(row => row.id)
|
||||
)
|
||||
.subscribe(res => {
|
||||
if (res) {
|
||||
this.service.msgSrv.success('推送开票成功');
|
||||
this.st.load(1);
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@ -136,11 +160,10 @@ export class CancellationInvoiceComponent implements OnInit {
|
||||
|
||||
/**
|
||||
* 移除
|
||||
* @param item
|
||||
* @returns
|
||||
*/
|
||||
batchRemove(item?: any) {
|
||||
if (this.selectedRows?.length <= 0 && !item) {
|
||||
batchRemove() {
|
||||
if (this.selectedRows?.length <= 0) {
|
||||
this.service.msgSrv.warning('请选择开票申请');
|
||||
return;
|
||||
}
|
||||
@ -151,6 +174,28 @@ export class CancellationInvoiceComponent implements OnInit {
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 作废发票
|
||||
* @param item
|
||||
* @returns
|
||||
*/
|
||||
removeInvocie(item?: any) {
|
||||
const modal = this.nzModalService.warning({
|
||||
nzTitle: '确定将所选已确认开票申请作废?',
|
||||
nzContent: '作废后发票信息不可修改',
|
||||
nzOnOk: () => {
|
||||
this.service.request(this.service.$api_cancel_invoic, { id: item.id }).subscribe(res => {
|
||||
if (res) {
|
||||
this.service.msgSrv.success('发票作废成功');
|
||||
this.st.load(1);
|
||||
modal.destroy();
|
||||
}
|
||||
});
|
||||
return false;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 推送发票
|
||||
* @param item
|
||||
@ -162,10 +207,10 @@ export class CancellationInvoiceComponent implements OnInit {
|
||||
nzComponentParams: { id: item.id },
|
||||
nzWidth: 1200,
|
||||
nzOnOk: () => {
|
||||
this.service.request(this.service.$api_apply_fico, { vatinvHid: item.id }).subscribe(res => {
|
||||
this.service.request(this.service.$api_push_invoic, { id: item.id }).subscribe(res => {
|
||||
if (res) {
|
||||
this.service.msgSrv.success('开票成功');
|
||||
modal.destroy;
|
||||
this.service.msgSrv.success('推送开票成功');
|
||||
this.st.load(1);
|
||||
}
|
||||
});
|
||||
return false;
|
||||
@ -327,15 +372,16 @@ export class CancellationInvoiceComponent implements OnInit {
|
||||
iif: item => item.sts != '3',
|
||||
click: item => this.requestedAction(item)
|
||||
},
|
||||
// {
|
||||
// text: '推送开票',
|
||||
// iif: item => item.sts != '3',
|
||||
// click: item => this.pushInvoiceAction(item)
|
||||
// },
|
||||
// {
|
||||
// text: '移除',
|
||||
// click: item => this.batchRemove(item)
|
||||
// },
|
||||
{
|
||||
text: '推送开票',
|
||||
iif: item => item.sts === '1',
|
||||
click: item => this.pushInvoiceAction(item)
|
||||
},
|
||||
{
|
||||
text: '作废发票',
|
||||
iif: item => item.sts === '3',
|
||||
click: item => this.removeInvocie(item)
|
||||
}
|
||||
// {
|
||||
// text: '确认'
|
||||
// // click: item => this.rejectAction(item)
|
||||
|
||||
@ -34,6 +34,12 @@ export class TicketService extends ShipperBaseService {
|
||||
$api_apply_fico = '/api/fcc/ficoVatinvH/crmPushInvo';
|
||||
// 运营端手工开票/确认/E税云开票成功后的回调
|
||||
$api_apply_fico_invoic = '/api/fcc/ficoVatinvH/operateAffirmVatinv';
|
||||
// 运营端推送开票-E税云开票
|
||||
$api_push_invoic = '/api/fcc/ficoVatinvH/crmPushInvo';
|
||||
// 运营端批量推送开票-E税云开票
|
||||
$api_batch_push_invoic = '/api/fcc/ficoVatinvH/crmPushInvoBath';
|
||||
// 发票作废
|
||||
$api_cancel_invoic = '/api/fcc/ficoVatinvH/inpinvHCancel';
|
||||
|
||||
// 获取汇总下单路径
|
||||
$api_get_order_summary_path = '/api/fcc/ficoExpressH/getSummaryOrderAddress';
|
||||
|
||||
@ -7,6 +7,11 @@
|
||||
.myForm .ant-upload.ant-upload-select-picture-card>.ant-upload {
|
||||
flex-direction: column !important;
|
||||
}
|
||||
|
||||
span {
|
||||
word-break: break-all
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user