Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop

This commit is contained in:
wangshiming
2021-12-30 14:45:39 +08:00
9 changed files with 150 additions and 112 deletions

View File

@ -211,7 +211,7 @@ export class TransactionFlowComponent implements OnInit {
{ title: '交易类型', index: 'tradeTypeLabel', width: 120 },
{ title: '关联单号', index: 'businessNumber', width: 150 },
{ title: '账户类型', index: 'accountTypeLabel', width: 100 },
{ title: '账户名称', index: 'enterpriseName', width: 100 },
{ title: '账户名称', index: 'roleName', width: 100 },
{ title: '所属项目', index: 'projectName', width: 100 },
{ title: '收支类型', index: 'incomeTypeLabel', width: 100 },
{ title: '交易金额', index: 'amount', width: 100 },

View File

@ -7,9 +7,7 @@
* @FilePath: \tms-obc-web\src\app\routes\order-management\modal\bulk\update-freight\update-freight.component.ts
*/
import { Component, Input, OnInit, ViewChild } from '@angular/core';
import {
SFComponent, SFSchema, SFUISchema
} from '@delon/form';
import { SFComponent, SFSchema, SFUISchema } from '@delon/form';
import { NzMessageService } from 'ng-zorro-antd/message';
import { NzModalRef } from 'ng-zorro-antd/modal';
import { OrderManagementService } from '../../../services/order-management.service';
@ -30,10 +28,15 @@ export class VehicleModifyCaptainComponent implements OnInit {
@Input()
data: any;
constructor(private modal: NzModalRef, private msgSrv: NzMessageService, public service: OrderManagementService, private service2: ShipperBaseService) {}
constructor(
private modal: NzModalRef,
private msgSrv: NzMessageService,
public service: OrderManagementService,
private service2: ShipperBaseService
) {}
ngOnInit(): void {
console.log(this.data)
console.log(this.data);
this.initSF();
}
initSF() {
@ -45,11 +48,11 @@ export class VehicleModifyCaptainComponent implements OnInit {
widget: 'select',
placeholder: '请选择',
visibleIf: {
_$expand: (value: boolean) => value,
_$expand: (value: boolean) => value
},
allowClear: true,
asyncData: () => this.service2.getNetworkFreightForwarder(),
},
asyncData: () => this.service2.getNetworkFreightForwarder()
}
},
required: ['enterpriseInfoName']
};
@ -62,9 +65,7 @@ export class VehicleModifyCaptainComponent implements OnInit {
}
save(value: any): void {
const params = {
};
const params = {};
this.service.request(this.service.$api_get_insertFreightChangeWhole, params).subscribe((res: any) => {
if (res) {
@ -78,6 +79,6 @@ export class VehicleModifyCaptainComponent implements OnInit {
this.modal.destroy();
}
search(value: any) {
console.log(value)
console.log(value);
}
}

View File

@ -10,51 +10,51 @@
<div nz-row nzGutter="8">
<div nz-col [nzXl]="8" [nzLg]="8" [nzSm]="8" [nzXs]="8" se-container [labelWidth]="100" col="1">
<se label="销售方">
天津怡亚通物流科技有限公司
{{headerInfo?.ltdId}}
</se>
<se label="申请编号">
VP2021012010
{{headerInfo?.vatappHCode}}
</se>
<se label="发票号码">
051010100
{{headerInfo?.invoiceno}}
</se>
<se label="发票代码">
54364653
{{headerInfo?.invoiceno2}}
</se>
<se label="开票日期">
2021-10-11
{{headerInfo?.invoicedate}}
</se>
<se label="价税合计">
2205.00
{{headerInfo?.disvatnotax}}
</se>
<se label="税额">
182.06
{{headerInfo?.disvattax}}
</se>
<se label="票面备注">
订单号11-12
{{headerInfo?.remarks}}
</se>
</div>
<div nz-col [nzXl]="8" [nzLg]="8" [nzSm]="8" [nzXs]="8" se-container [labelWidth]="100" col="1">
<se label="购买方">
茅台股份有限公司
{{headerInfo?.artoname}}
</se>
<se label="纳税号">
912301046656930913
{{headerInfo?.artotaxno}}
</se>
<se label="地址">
贵州省贵阳市
{{headerInfo?.artoadd}}
</se>
<se label="电话">
075588393198
{{headerInfo?.artotel}}
</se>
<se label="开户行">
中国工商银行股份有限公司哈贵阳支行
{{headerInfo?.artobank}}
</se>
<se label="银行账户">
3500044119068126788
{{headerInfo?.artoacc}}
</se>
<se label="其他要求">
开票单位要吨
{{headerInfo?.remarks}}
</se>
</div>
<div *ngIf="isCanEdit" nz-col [nzXl]="8" [nzLg]="8" [nzSm]="8" [nzXs]="8" class="text-right">
@ -87,7 +87,7 @@
</div>
</div>
<st #orderST [data]="service.$mock_url" [columns]="orderColumns" size="small" bordered="true"
<st #orderST [data]="service.$api_get_invoice_order_detail" [columns]="orderColumns" size="small" bordered="true"
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, process: beforeReq }"
[res]="{ reName: { list: 'data.records', total: 'data.total' } }"
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
@ -108,40 +108,38 @@
</div>
</div>
<st #costST [data]="service.$mock_url" [columns]="costColumns" size="small" bordered="true"
<st #costST [data]="service.$api_get_invoice_cost_detail" [columns]="costColumns" size="small" bordered="true"
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, process: beforeReq }"
[res]="{ reName: { list: 'data.records', total: 'data.total' } }"
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
[loading]="service.http.loading" [scroll]="{ x:'1200px',y: '250px' }"></st>
</nz-tab>
<nz-tab nzTitle="发票明细">
<st #invoiceST [data]="service.$mock_url" [columns]="invoiceColumns" size="small" bordered="true"
<st #invoiceST [data]="service.$api_get_invoice_details" [columns]="invoiceColumns" size="small" bordered="true"
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, process: beforeReq }"
[res]="{ reName: { list: 'data.records', total: 'data.total' } }"
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
[loading]="service.http.loading" [scroll]="{ x:'1200px',y: '250px' }">
<ng-template st-row="owner" let-item let-index="index">
<ng-template st-row="vatname" let-item let-index="index">
<nz-select *ngIf="isEdit" [ngModel]="item.owner"
(ngModelChange)="invoiceST.setRow(index, { owner: $event })" style="width: 100%;">
<nz-option nzValue="曲丽丽" nzLabel="曲丽丽"></nz-option>
<nz-option nzValue="lucy" nzLabel="Lucy"></nz-option>
(ngModelChange)="invoiceST.setRow(index, { vatname: $event })" style="width: 100%;">
</nz-select>
<ng-container *ngIf="!isEdit">{{ item.owner }}</ng-container>
<ng-container *ngIf="!isEdit">{{ item.vatname }}</ng-container>
</ng-template>
<ng-template st-row="callNo" let-item let-index="index">
<input *ngIf="isEdit" nz-input [ngModel]="item.callNo"
(ngModelChange)="invoiceST.setRow(index, { callNo: $event })" />
<ng-container *ngIf="!isEdit">{{ item.callNo }}</ng-container>
<ng-template st-row="vatmodel" let-item let-index="index">
<input *ngIf="isEdit" nz-input [ngModel]="item.vatmodel"
(ngModelChange)="invoiceST.setRow(index, { vatmodel: $event })" />
<ng-container *ngIf="!isEdit">{{ item.vatmodel }}</ng-container>
</ng-template>
<ng-template st-row="progress" let-item let-index="index">
<input *ngIf="isEdit" nz-input [ngModel]="item.progress"
(ngModelChange)="invoiceST.setRow(index, { progress: $event })" />
<ng-container *ngIf="!isEdit">{{ item.progress }}</ng-container>
<ng-template st-row="vatunit" let-item let-index="index">
<input *ngIf="isEdit" nz-input [ngModel]="item.vatunit"
(ngModelChange)="invoiceST.setRow(index, { vatunit: $event })" />
<ng-container *ngIf="!isEdit">{{ item.vatunit }}</ng-container>
</ng-template>
<ng-template st-row="status" let-item let-index="index">
<input *ngIf="isEdit" nz-input [ngModel]="item.status"
(ngModelChange)="invoiceST.setRow(index, { status: $event })" />
<ng-container *ngIf="!isEdit">{{ item.status }}</ng-container>
<ng-template st-row="vatqty" let-item let-index="index">
<input *ngIf="isEdit" nz-input [ngModel]="item.vatqty"
(ngModelChange)="invoiceST.setRow(index, { vatqty: $event })" />
<ng-container *ngIf="!isEdit">{{ item.vatqty }}</ng-container>
</ng-template>
</st>
</nz-tab>

View File

@ -32,8 +32,12 @@ export class InvoiceDetailComponent implements OnInit {
isCanEdit = false;
isEdit = false;
headerInfo: any = {};
constructor(public service: TicketService, private route: ActivatedRoute) {
this.isCanEdit = !!route.snapshot.queryParams.type;
const id = route.snapshot.params.id;
this.loadInvoiceHeader(id);
}
ngOnInit(): void {}
@ -48,6 +52,15 @@ export class InvoiceDetailComponent implements OnInit {
return requestOptions;
};
loadInvoiceHeader(id: string) {
this.service.request(this.service.$api_get_invoice_header_detail, { id }).subscribe(res => {
console.log(res);
if (res) {
this.headerInfo = res;
}
});
}
goBack() {
history.go(-1);
}
@ -78,30 +91,35 @@ export class InvoiceDetailComponent implements OnInit {
private initOrderSF(): SFSchema {
return {
properties: {
orderSn: {
billHId: {
type: 'string',
title: '订单号',
ui: {
autocomplete: 'off'
}
},
receiveName: {
billType: {
type: 'string',
title: '订单类型',
enum: [{ label: '全部', value: '' }],
enum: [
{ label: '全部', value: '' },
{ label: '整车', value: 1 },
{ label: '大宗', value: 2 }
],
ui: {
widget: 'select',
placeholder: '请选择'
},
default: ''
},
receiveNa22me: {
projectId: {
type: 'string',
title: '所属项',
enum: [{ label: '全部', value: '' }],
title: '所属项',
ui: {
widget: 'select',
placeholder: '请选择'
placeholder: '请选择',
allowClear: true,
asyncData: () => this.service.getEnterpriseProject()
},
default: ''
}
@ -111,32 +129,32 @@ export class InvoiceDetailComponent implements OnInit {
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 => `特朗普&#10; 13789040523 &#10;粤GT8419` },
{ title: '申请金额', index: 'callNo' },
{ title: '运输费', index: 'callNo' },
{ title: '附加费', index: 'callNo' },
{ title: '开票金额', index: 'callNo' }
{ title: '订单号', index: 'billHId' },
{ title: '订单完成日期', index: 'billTime', type: 'date' },
{ title: '所属项目', index: 'projectId' },
{ title: '订单类型', index: 'billType' },
{ title: '装货地', index: 'loadingfrom' },
{ title: '卸货地', index: 'loadingto' },
{ title: '货物信息', index: 'goodsinfo' },
{ title: '承运司机', index: 'driverinfo' },
{ title: '申请金额', index: 'billkpnotax' },
{ title: '运输费', index: 'fjfmoney2' },
{ title: '附加费', index: 'fjfmoney' },
{ title: '开票金额', index: 'billkpmoney' }
];
}
private initCostSF(): SFSchema {
return {
properties: {
orderSn: {
billHId: {
type: 'string',
title: '订单号',
ui: {
autocomplete: 'off'
}
},
orderS2n: {
feeHId: {
type: 'string',
title: '费用号',
ui: {
@ -149,25 +167,25 @@ export class InvoiceDetailComponent implements OnInit {
private initCostST(): STColumn[] {
return [
{ title: '费用号', index: 'no' },
{ title: '订单号', index: 'callNo' },
{ title: '订单日期', index: 'callNo', type: 'date' },
{ title: '费用号', index: 'feeHId' },
{ title: '订单号', index: 'billHId' },
{ title: '订单日期', index: 'createTime', type: 'date' },
{ title: '计费日期', index: 'callNo', type: 'date' },
{ title: '税率', index: 'callNo' },
{ title: '申请金额', index: 'callNo' },
{ title: '开票金额', index: 'callNo' }
{ title: '税率', index: 'vatrate' },
{ title: '申请金额', index: 'vatmoney' },
{ title: '开票金额', index: 'vatnotax' }
];
}
private initInvoiceST(): STColumn[] {
return [
{ title: '服务名称', render: 'owner' },
{ title: '规格型号', render: 'callNo' },
{ title: '单位', render: 'progress' },
{ title: '数量', render: 'status' },
{ title: '金额', index: 'callNo' },
{ title: '服务名称', render: 'vatname' },
{ title: '规格型号', render: 'vatmodel' },
{ title: '单位', render: 'vatunit' },
{ title: '数量', render: 'vatqty' },
{ title: '金额', index: 'vatnotax' },
{ title: '税率', index: 'callNo' },
{ title: '税额', index: 'callNo' }
{ title: '税额', index: 'vattax' }
];
}
}

View File

@ -28,13 +28,14 @@
<button nz-button (click)="this.invoiceHongChong()">发票红冲</button>
<div class="ml-md">
已选择
<strong class="text-red">{{ selectedRows.length }}</strong> 条数据&nbsp;&nbsp; 开票金额总计 <strong class="text-red">{{
<strong class="text-red">{{ selectedRows.length }}</strong> 条数据&nbsp;&nbsp; 开票金额总计 <strong
class="text-red">{{
totalCallNo }}</strong>
<a *ngIf="totalCallNo > 0" (click)="st.clearCheck()" class="ml-lg">清空</a>
</div>
</div>
<st #st [data]="service.$mock_url" [columns]="columns"
<st #st [data]="service.$api_get_invoice_page" [columns]="columns"
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, process: beforeReq }"
[res]="{ reName: { list: 'data.records', total: 'data.total' } }"
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
@ -43,7 +44,9 @@
{{item.no}}
<a>预览发票</a>
</ng-template>
<ng-template st-row="expresscompany" let-item let-index="index" let-column="column">
{{ item.expresscompany }} <br> {{ item.expressno }}
</ng-template>
</st>
</nz-card>

View File

@ -27,11 +27,10 @@
@media (min-width: 1200px) {
.expend-options {
margin-top: -40px;
max-width : 400px;
position : absolute;
right : 0;
bottom : 30px;
bottom : 25px;
}
}

View File

@ -32,7 +32,13 @@ export class InvoicedListComponent implements OnInit {
beforeReq = (requestOptions: STRequestOptions) => {
if (this.sf) {
Object.assign(requestOptions.body, { ...this.sf.value });
Object.assign(requestOptions.body, {
...this.sf.value,
createTime: {
start: this.sf.value.createTime?.[0] || '',
end: this.sf.value.createTime?.[1] || ''
}
});
}
return requestOptions;
};
@ -108,14 +114,14 @@ export class InvoicedListComponent implements OnInit {
hidden: true
}
},
orderSn: {
invoiceno: {
type: 'string',
title: '发票号码',
ui: {
autocomplete: 'off'
}
},
orderSn2: {
vatinvcode: {
type: 'string',
title: '申请编号',
ui: {
@ -126,12 +132,13 @@ export class InvoicedListComponent implements OnInit {
title: '开票日期',
type: 'string',
ui: {
widget: 'date',
mode: 'range',
format: 'yyyy-MM-dd'
widget: 'sl-from-to-search',
format: 'yyyy-MM-dd',
placeholder: '请选择',
nzShowTime: true
} as SFDateWidgetSchema
},
receiveName: {
arto: {
type: 'string',
title: '购买人',
enum: [{ label: '全部', value: '全部' }],
@ -143,17 +150,19 @@ export class InvoicedListComponent implements OnInit {
}
}
},
receiveName2: {
ltdId: {
type: 'string',
title: '网络货运人',
enum: [{ label: '全部', value: '全部' }],
ui: {
widget: 'select',
placeholder: '请选择',
allowClear: true,
visibleIf: {
expand: (value: boolean) => value
}
}
},
asyncData: () => this.service.getNetworkFreightForwarder()
},
default: ''
}
}
};
@ -162,25 +171,24 @@ export class InvoicedListComponent implements OnInit {
private initST(): STColumn[] {
return [
{ title: '', index: 'key', type: 'checkbox' },
{ title: '发票号码', index: 'no', width: 150 },
{ title: '申请编号', index: 'callNo', width: 150 },
{ title: '申请时间', index: 'updatedAt', type: 'date', width: 150 },
{ title: '发票类型', index: 'callNo', width: 100 },
{ title: '网络货运人', index: 'callNo', width: 120 },
{ title: '购买人', index: 'callNo', width: 90 },
{ title: '订单数', index: 'callNo', width: 90 },
{ title: '发票号码', index: 'invoiceno', width: 150 },
{ title: '申请编号', index: 'vatinvcode', width: 150 },
{ title: '申请时间', index: 'createTime', type: 'date', width: 150 },
{ title: '发票类型', index: 'invoicetype', width: 100 },
{ title: '网络货运人', index: 'ltdId', width: 120 },
{ title: '购买人', index: 'artoname', width: 90 },
{ title: '订单数', index: 'ordlines', width: 90 },
{ title: '价税合计', index: 'callNo', width: 100 },
{ title: '金额', index: 'callNo', width: 90 },
{ title: '金额', index: 'disvatnotax', width: 90 },
{ title: '税率', index: 'callNo', width: 90 },
{ title: '税额', index: 'callNo', width: 90 },
{ title: '开票日期', index: 'updatedAt', type: 'date', width: 150 },
{ title: '税额', index: 'disvattax', width: 90 },
{ title: '开票日期', index: 'invoicedate', type: 'date', width: 150 },
{
title: '快递信息',
render: 'logostics',
width: 120,
format: item => `顺丰快递</br>6202110012313`
render: 'expresscompany',
width: 120
},
{ title: '状态', render: 'logostics', width: 90 },
{ title: '状态', index: 'sts', width: 90 },
{
title: '操作',
fixed: 'right',
@ -189,7 +197,7 @@ export class InvoicedListComponent implements OnInit {
buttons: [
{
text: '查看明细',
click: item => this.router.navigate(['/ticket/invoice-list/detail/1'])
click: item => this.router.navigate(['/ticket/invoice-list/detail/' + item.id])
},
{
text: '查看物流',

View File

@ -28,6 +28,17 @@ export class TicketService extends ShipperBaseService {
// 运营端销票处理-订单明细页面
$api_ficoVatinvDetailAll = '/api/fcc/ficoVatinvH/ficoVatinvDetailAll';
// 已开发票查询
$api_get_invoice_page = '/api/fcc/ficoVatinvH/list/page';
// 获取销项发票抬头
$api_get_invoice_header_detail = '/api/fcc/ficoVatinvH/get';
// 获取分票发票抬头开票申请订单明细
$api_get_invoice_order_detail = '/api/fcc/ficoVatappBill/getDetailByVatinvHId';
// 获取分票发票抬头开票申请费用明细
$api_get_invoice_cost_detail = '/api/fcc/ficoVatappFee/getDetailByVatinvHId';
// 获取分票发票明细
$api_get_invoice_details = '/api/fcc/ficoVatinvL/getDetailByVatinvHId';
constructor(public injector: Injector) {
super(injector);
}