This commit is contained in:
xiaoxing.liu
2022-04-15 17:29:43 +08:00
34 changed files with 566 additions and 273 deletions

View File

@ -4,7 +4,7 @@
* @Author : Shiming * @Author : Shiming
* @Date : 2022-01-05 11:01:55 * @Date : 2022-01-05 11:01:55
* @LastEditors : Shiming * @LastEditors : Shiming
* @LastEditTime : 2022-01-18 17:16:27 * @LastEditTime : 2022-04-15 14:07:19
* @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\components\\contract-template-detail\\contract-template-detail.component.html * @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\components\\contract-template-detail\\contract-template-detail.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved. * Copyright (C) 2022 huzhenhong. All rights reserved.
--> -->
@ -34,9 +34,6 @@
<nz-card> <nz-card>
<div nz-col nzSpan="20" style="overflow: scroll"> <div nz-col nzSpan="20" style="overflow: scroll">
<nz-card class="card-height" *ngIf="!isUpdate"> <nz-card class="card-height" *ngIf="!isUpdate">
<div class="mb-md">
<div>{{detailList?.templateName}}</div>
</div>
<div [innerHTML]="detailList?.templateContent | safehtml"></div> <div [innerHTML]="detailList?.templateContent | safehtml"></div>
</nz-card> </nz-card>

View File

@ -1,6 +1,45 @@
<!--
* @Description :
* @Version : 1.0
* @Author : Shiming
* @Date : 2022-03-30 13:55:41
* @LastEditors : Shiming
* @LastEditTime : 2022-04-15 17:13:53
* @FilePath : \\tms-obc-web\\src\\app\\routes\\datatable\\components\\compliance\\customer\\customer.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> <nz-card>
<sf mode="search" [schema]="searchSchema" (formSubmit)="st.reset($event)" (formReset)="st.reset($event)"></sf> <sf #sf mode="search" [schema]="searchSchema" button="none"></sf>
<st #st [data]="url" [columns]="columns"></st> <div class="chooseBox">
<div class="timeBox">
<nz-radio-group [(ngModel)]="mode" nzButtonStyle="solid" (ngModelChange)="changeData()">
<label nz-radio-button nzValue="year"></label>
<label nz-radio-button nzValue="month"></label>
<label nz-radio-button nzValue="date"></label>
<label nz-radio-button nzValue="define">自定义</label>
</nz-radio-group>
<div class="dateBox">
<nz-date-picker [(ngModel)]="date" [nzMode]="mode" [nzFormat]="dateFormat" *ngIf="mode !== 'define'" [nzDisabledDate]="disabledDate" (ngModelChange)="onChange($event)"></nz-date-picker>
<nz-range-picker [(ngModel)]="defineDate" [nzFormat]="dateFormat" *ngIf="mode === 'define'" [nzDisabledDate]="disabledDate" (ngModelChange)="onChange($event)"></nz-range-picker>
</div>
</div>
</div>
<st
#st
[bordered]="true"
[scroll]="{ x: '2000px' }"
[data]="service.$api_listCusComplianceReportPage"
[columns]="columns"
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }"
[scroll]="{ x: '1200px' }" [res]="{ reName: { list: 'data.records', total: 'data.total' } }"
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
[loading]="false"
>
<ng-template st-row="freightPrice" let-item let-index="index">
{{ item.freightPrice | currency }}
</ng-template>
</st>
</nz-card> </nz-card>

View File

@ -0,0 +1,11 @@
.chooseBox{
display: flex;
}
.timeBox{
display: flex;
margin: 0 0 0 10px;
}
.dateBox{
display: inline-block;
margin: 0 0 0 10px;
}

View File

@ -1,45 +1,120 @@
import { SFComponent } from '@delon/form';
/*
* @Description :
* @Version : 1.0
* @Author : Shiming
* @Date : 2022-03-30 13:55:41
* @LastEditors : Shiming
* @LastEditTime : 2022-04-15 17:13:03
* @FilePath : \\tms-obc-web\\src\\app\\routes\\datatable\\components\\compliance\\customer\\customer.component.ts
* Copyright (C) 2022 huzhenhong. All rights reserved.
*/
import { Component, OnInit, ViewChild } from '@angular/core'; import { Component, OnInit, ViewChild } from '@angular/core';
import { STColumn, STComponent } from '@delon/abc/st'; import { STColumn, STComponent, STRequestOptions } from '@delon/abc/st';
import { SFSchema } from '@delon/form'; import { SFSchema } from '@delon/form';
import { ModalHelper, _HttpClient } from '@delon/theme'; import { ModalHelper, _HttpClient ,DatePipe} from '@delon/theme';
import { DataService } from '../../../services/data.service';
import { differenceInCalendarDays } from 'date-fns';
@Component({ @Component({
selector: 'app-datatable-compliance-customer', selector: 'app-datatable-compliance-customer',
templateUrl: './customer.component.html', templateUrl: './customer.component.html',
styleUrls: ['./customer.component.less'],
providers: [DatePipe]
}) })
export class DatatableComplianceCustomerComponent implements OnInit { export class DatatableComplianceCustomerComponent implements OnInit {
url = `/user`; @ViewChild('sf', {static: false}) sf!: SFComponent
mode = 'year';
type = 1;
date: any = null;
defineDate = [];
time: any = ['2022']
dateFormat = 'yyyy';
dateNext: any = null;
modeNext = 'year';
timeNext: any = ['2022-01-01 00:00:00']
today = new Date();
searchSchema: SFSchema = { searchSchema: SFSchema = {
properties: { properties: {
no: { no: {
type: 'string', type: 'string',
title: '编号' title: '客户名称'
} },
no2: {
type: 'string',
title: '业务员'
},
no3: {
type: 'string',
title: '合伙人名称'
},
} }
}; };
@ViewChild('st') private readonly st!: STComponent; @ViewChild('st') private readonly st!: STComponent;
columns: STColumn[] = [ columns: STColumn[] = [
{ title: '编号', index: 'no' }, { title: '公司名称', index: 'enterpriseName' ,},
{ title: '调用次数', type: 'number', index: 'callNo' }, { title: '注册时间', index: 'registerTime' },
{ title: '头像', type: 'img', width: '50px', index: 'avatar' }, { title: '客户类型', width: '100px', index: 'customerType' },
{ title: '时间', type: 'date', index: 'updatedAt' }, { title: '业务员', index: 'salesmanName' },
{ { title: '合伙人', index: 'partnerName' },
title: '', { title: '订单数', index: 'billCounts' },
buttons: [ { title: '订单不合格数', index: 'billQuaCounts' },
// { text: '查看', click: (item: any) => `/form/${item.id}` }, { title: '订单不合格率', index: 'billQuaCountsPer' },
// { text: '编辑', type: 'static', component: FormEditComponent, click: 'reload' }, { title: '货源单订单数', index: 'gsourceCounts' },
] { title: '合同单数', index: 'billConCounts' },
} { title: '货源单个', index: 'gsourceCounts' },
{ title: '运费直付单数', index: 'freightDirPayCounts' },
{ title: '运费代收单数', index: 'freightRepPayCounts' },
{ title: '手机直付', index: 'updatedAt' },
{ title: '汇款单数', index: 'updatedAt' },
{ title: '及时付款', index: 'timelyPayPer' },
]; ];
constructor(private http: _HttpClient, private modal: ModalHelper) { } constructor(private http: _HttpClient, private modal: ModalHelper,public service: DataService,private datePipe: DatePipe) { }
/**
* 查询参数
*/
get reqParams() {
if (this.mode === 'year') {
this.type = 1
} else if (this.mode === 'month') {
this.type = 2
} else if (this.mode === 'date') {
this.type = 3
} else {
this.type = 4
}
const params: any = Object.assign({}, this.sf?.value || {});
params.type = this.type
params.queryTime = this.time
delete params._$expand;
return { ...params };
}
ngOnInit(): void { } ngOnInit(): void { }
onChange(result: any) {
add(): void { if (this.mode === 'year') {
// this.modal this.time = [this.datePipe.transform(this.date, 'yyyy') + '-01-01 00:00:00']
// .createStatic(FormEditComponent, { i: { id: 0 } }) } else if (this.mode === 'month') {
// .subscribe(() => this.st.reload()); this.time = [this.datePipe.transform(this.date, 'yyyy-MM') + '-01 00:00:00']
} else if (this.mode === 'date') {
this.time = [this.datePipe.transform(this.date, 'yyyy-MM-dd') + ' 00:00:00']
} else {
this.time = [this.datePipe.transform(this.defineDate[0], 'yyyy-MM-dd') + '00:00:00', this.datePipe.transform(this.defineDate[1], 'yyyy-MM-dd') + ' 00:00:00']
}
this.st.reload({ ...this.reqParams });
} }
changeData() {
if (this.mode === 'year') {
this.dateFormat = 'yyyy'
} else if (this.mode === 'month') {
this.dateFormat = 'yyyy-MM'
} else {
this.dateFormat = 'yyyy-MM-dd'
}
}
disabledDate = (current: Date): boolean =>
// Can not select days before today and today
differenceInCalendarDays(current, this.today) > 0;
} }

View File

@ -4,7 +4,7 @@
* @Author : Shiming * @Author : Shiming
* @Date : 2021-12-27 10:30:56 * @Date : 2021-12-27 10:30:56
* @LastEditors : Shiming * @LastEditors : Shiming
* @LastEditTime : 2022-04-07 15:07:27 * @LastEditTime : 2022-04-15 16:03:46
* @FilePath : \\tms-obc-web\\src\\app\\routes\\datatable\\services\\data.service.ts * @FilePath : \\tms-obc-web\\src\\app\\routes\\datatable\\services\\data.service.ts
* Copyright (C) 2022 huzhenhong. All rights reserved. * Copyright (C) 2022 huzhenhong. All rights reserved.
*/ */
@ -85,6 +85,9 @@ export class DataService extends BaseService {
// 数据大屏-交易分布 // 数据大屏-交易分布
$api_getTransactionDistribution = `/api/sdc/reportDataLargeScreen/getTransactionDistribution`; $api_getTransactionDistribution = `/api/sdc/reportDataLargeScreen/getTransactionDistribution`;
// 客户-合规报表
$api_listCusComplianceReportPage = `/api/sdc/report/listCusComplianceReportPage`;
constructor(public injector: Injector) { constructor(public injector: Injector) {

View File

@ -11,6 +11,26 @@
<page-header-wrapper [title]="'应付核销'"> <page-header-wrapper [title]="'应付核销'">
</page-header-wrapper> </page-header-wrapper>
<nz-card>
<nz-row [nzGutter]="16">
<nz-col [nzXl]="5" [nzLg]="8" [nzSm]="12">
<nz-statistic [nzValue]="((info?.prmoneySum || 0) | currency)+'' " [nzTitle]="'应付金额'"
[nzValueStyle]="{'font-size':'16px',color:'red'}">
</nz-statistic>
</nz-col>
<nz-col [nzXl]="5" [nzLg]="8" [nzSm]="12">
<nz-statistic [nzValue]="((info?.phxmoneySum || 0) | currency) +''" [nzTitle]="'已核销金额'"
[nzValueStyle]="{'font-size':'16px',color:'red'}">
</nz-statistic>
</nz-col>
<nz-col [nzXl]="5" [nzLg]="8" [nzSm]="12">
<nz-statistic [nzValue]="((info?.unPhxmoneySum || 0)| currency) +''" [nzTitle]="'未核销金额'"
[nzValueStyle]="{'font-size':'16px',color:'red'}">
</nz-statistic>
</nz-col>
</nz-row>
</nz-card>
<nz-card class="search-box" nzBordered> <nz-card class="search-box" nzBordered>
<div nz-row nzGutter="8"> <div nz-row nzGutter="8">
<div nz-col [nzXl]="_$expand ? 24 : 18" [nzLg]="24" [nzSm]="24" [nzXs]="24"> <div nz-col [nzXl]="_$expand ? 24 : 18" [nzLg]="24" [nzSm]="24" [nzXs]="24">

View File

@ -23,6 +23,7 @@ export class PayableOrderComponent implements OnInit {
_$expand = false; _$expand = false;
selectedRows: any[] = []; selectedRows: any[] = [];
info: any = {};
constructor( constructor(
public service: FreightAccountService, public service: FreightAccountService,
private nzModalService: NzModalService, private nzModalService: NzModalService,
@ -30,7 +31,16 @@ export class PayableOrderComponent implements OnInit {
private currencyPipe: CurrencyPipe private currencyPipe: CurrencyPipe
) {} ) {}
ngOnInit(): void {} ngOnInit(): void {
}
loadInfo() {
this.service.request(this.service.$api_get_fico_ph_sum).subscribe(res => {
if (res) {
this.info = res;
}
});
}
beforeReq = (requestOptions: STRequestOptions) => { beforeReq = (requestOptions: STRequestOptions) => {
if (this.sf) { if (this.sf) {
@ -54,6 +64,7 @@ export class PayableOrderComponent implements OnInit {
}); });
} }
} }
this.loadInfo();
return requestOptions; return requestOptions;
}; };

View File

@ -10,6 +10,26 @@
--> -->
<page-header-wrapper [title]="'应收核销'"> </page-header-wrapper> <page-header-wrapper [title]="'应收核销'"> </page-header-wrapper>
<nz-card>
<nz-row [nzGutter]="16">
<nz-col [nzXl]="5" [nzLg]="8" [nzSm]="12">
<nz-statistic [nzValue]="((info?.armoneySum || 0) | currency)+'' " [nzTitle]="'应收金额'"
[nzValueStyle]="{'font-size':'16px',color:'red'}">
</nz-statistic>
</nz-col>
<nz-col [nzXl]="5" [nzLg]="8" [nzSm]="12">
<nz-statistic [nzValue]="((info?.ahxmoneySum || 0) | currency) +''" [nzTitle]="'已核销金额'"
[nzValueStyle]="{'font-size':'16px',color:'red'}">
</nz-statistic>
</nz-col>
<nz-col [nzXl]="5" [nzLg]="8" [nzSm]="12">
<nz-statistic [nzValue]="((info?.unAhxmoneySum || 0)| currency) +''" [nzTitle]="'未核销金额'"
[nzValueStyle]="{'font-size':'16px',color:'red'}">
</nz-statistic>
</nz-col>
</nz-row>
</nz-card>
<nz-card class="search-box" nzBordered> <nz-card class="search-box" nzBordered>
<div nz-row nzGutter="8"> <div nz-row nzGutter="8">
<div nz-col [nzXl]="_$expand ? 24 : 18" [nzLg]="24" [nzSm]="24" [nzXs]="24"> <div nz-col [nzXl]="_$expand ? 24 : 18" [nzLg]="24" [nzSm]="24" [nzXs]="24">

View File

@ -24,6 +24,8 @@ export class ReceivableOrderComponent implements OnInit {
_$expand = false; _$expand = false;
selectedRows: any[] = []; selectedRows: any[] = [];
info: any = {};
constructor( constructor(
public service: FreightAccountService, public service: FreightAccountService,
private nzModalService: NzModalService, private nzModalService: NzModalService,
@ -31,7 +33,16 @@ export class ReceivableOrderComponent implements OnInit {
private currencyPipe: CurrencyPipe private currencyPipe: CurrencyPipe
) {} ) {}
ngOnInit(): void {} ngOnInit(): void {
}
loadInfo() {
this.service.request(this.service.$api_get_fico_sum).subscribe(res => {
if (res) {
this.info = res;
}
});
}
beforeReq = (requestOptions: STRequestOptions) => { beforeReq = (requestOptions: STRequestOptions) => {
if (this.sf) { if (this.sf) {
@ -55,6 +66,7 @@ export class ReceivableOrderComponent implements OnInit {
}); });
} }
} }
this.loadInfo();
return requestOptions; return requestOptions;
}; };
@ -260,23 +272,23 @@ export class ReceivableOrderComponent implements OnInit {
private initST(): STColumn[] { private initST(): STColumn[] {
return [ return [
{ title: '', index: 'key', type: 'checkbox' }, { title: '', index: 'key', type: 'checkbox' },
{ title: '核销单号', index: 'ahxcode', type: 'link', width: 140 }, { title: '核销单号', index: 'ahxcode', type: 'link', width: 210 },
{ title: '订单号', index: 'billHCode', type: 'link', width: 140 }, { title: '订单号', index: 'billHCode', type: 'link', width: 180 },
{ title: '网络货运人', index: 'ltdName', width: 160 }, { title: '网络货运人', index: 'ltdName', width: 220 },
{ title: '核销日期', index: 'ahxdate', type: 'date', width: 160 }, { title: '核销日期', index: 'ahxdate', type: 'date', width: 160 },
{ title: '收款账户', index: 'ltdaccountId', width: 160 }, { title: '收款账户', index: 'ltdaccountId', width: 200 },
{ title: '核销类型', index: 'ahxType', type: 'enum', enum: { '1': '预收款' }, width: 120 }, { title: '核销类型', index: 'ahxType', type: 'enum', enum: { '1': '预收款' }, width: 120 },
{ {
title: '核销金额', title: '核销金额',
index: 'ahxmoney', index: 'ahxmoney',
width: 120, width: 140,
className: 'text-right', className: 'text-right',
format: item => `${this.currencyPipe.transform(item.ahxmoney)}` format: item => `${this.currencyPipe.transform(item.ahxmoney)}`
}, },
{ {
title: '应收金额', title: '应收金额',
index: 'armoney', index: 'armoney',
width: 120, width: 140,
className: 'text-right', className: 'text-right',
format: item => `${this.currencyPipe.transform(item.armoney)}` format: item => `${this.currencyPipe.transform(item.armoney)}`
}, },

View File

@ -11,8 +11,8 @@
<div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" class="text-right"> <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 nzType="primary" [nzLoading]="service.http.loading" (click)="st?.load(1)">查询</button>
<button nz-button [disabled]="false" (click)="resetSF()">重置</button> <button nz-button [disabled]="false" (click)="resetSF()">重置</button>
<button nz-button [disabled]="false"> 导出</button> <!-- <button nz-button [disabled]="false"> 导出</button>
<button nz-button [disabled]="false"> 导出明细</button> <button nz-button [disabled]="false"> 导出明细</button> -->
<button nz-button nzType="link" (click)="expandToggle()"> <button nz-button nzType="link" (click)="expandToggle()">
{{ !_$expand ? '展开' : '收起' }} {{ !_$expand ? '展开' : '收起' }}
<i nz-icon [nzType]="!_$expand ? 'down' : 'up'"></i> <i nz-icon [nzType]="!_$expand ? 'down' : 'up'"></i>

View File

@ -217,7 +217,7 @@ export class VoucherListComponent implements OnInit {
buttons: [ buttons: [
{ {
text: '浏览', text: '浏览',
click: (item: any) => this.router.navigate(['/voucher-summary/list/detail/' + item.id]) click: (item: any) => this.router.navigate(['/financial-management/voucher-summary/list/detail/' + item.id])
} }
] ]
} }

View File

@ -88,6 +88,8 @@ export class FreightAccountService extends ShipperBaseService {
// 查询应收核销抬头 // 查询应收核销抬头
$api_get_fico_page = '/api/fcc/ficoAhxH/list/page'; $api_get_fico_page = '/api/fcc/ficoAhxH/list/page';
// 应收核销汇总
$api_get_fico_sum = '/api/fcc/ficoAhxH/getSum';
// 获取应收核销抬头 // 获取应收核销抬头
$api_get_fico_header = '/api/fcc/ficoAhxH/get'; $api_get_fico_header = '/api/fcc/ficoAhxH/get';
// 查询应收核销明细 // 查询应收核销明细
@ -95,6 +97,8 @@ export class FreightAccountService extends ShipperBaseService {
// 查询应付核销抬头 // 查询应付核销抬头
$api_get_fico_ph_page = '/api/fcc/ficoPhxH/list/page'; $api_get_fico_ph_page = '/api/fcc/ficoPhxH/list/page';
// 应付核销汇总
$api_get_fico_ph_sum = '/api/fcc/ficoPhxH/getSum';
// 获取应付核销抬头 // 获取应付核销抬头
$api_get_fico_ph_header = '/api/fcc/ficoPhxH/get'; $api_get_fico_ph_header = '/api/fcc/ficoPhxH/get';
// 查询应付核销明细 // 查询应付核销明细

View File

@ -4,7 +4,7 @@
* @Author : Shiming * @Author : Shiming
* @Date : 2021-12-24 16:58:02 * @Date : 2021-12-24 16:58:02
* @LastEditors : Shiming * @LastEditors : Shiming
* @LastEditTime : 2022-04-06 15:40:05 * @LastEditTime : 2022-04-15 09:58:12
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\bulk-detail-change\\bulk-detail-change.component.html * @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\bulk-detail-change\\bulk-detail-change.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved. * Copyright (C) 2022 huzhenhong. All rights reserved.
--> -->
@ -254,31 +254,38 @@
</sf> </sf>
</nz-card> </nz-card>
<!--
<nz-card nzTitle="运费信息"#distannce3> 结算依据为1时卸货时间不为空显示运费信息否则隐藏
<h2>{{i?.goodsInfoList?.[0]?.freightPrice}}{{i?.goodsInfoList?.[0]?.freightTypeLabel}}{{ i?.goodsInfoList?.[0]?.settlementBasisLabel ? i?.goodsInfoList?.[0]?.settlementBasisLabel + '' :' ' }}{{i?.goodsInfoList?.[0]?.ruleLabel}}</h2> 结算依据为2时装货时间不为空显示运费信息否则隐藏
<st #st [data]="billExpenses" [columns]="logColumns" [ps]="0" [page]="{ show: false, showSize: false }"> -->
<ng-template st-row="PriceType" let-item let-index="index"> 到付 </ng-template> <nz-card [nzTitle]="priceTitel" #distannce3
<ng-template st-row="price" let-item let-index="index"> [hidden]="!(i?.settlementBasis ==='1' && i?.unloadTime) && !(i?.settlementBasis ==='2' && i?.loadTime)">
{{ item.price | currency }} <ng-template #priceTitel>
</ng-template> <span>运费信息</span><span
<ng-template st-row="prices" let-item let-index="index"> style="padding-left: 24px; color: #f59a23;font-size: small;">到货后{{i?.goodsResource.paymentDays}}天内支付运费</span>
{{ item.price + item.surcharge | currency }} </ng-template>
</ng-template> <div style="margin-bottom: 18px">
<ng-template st-row="surcharge" let-item let-index="index"> <span style="color: #da001b; font-size: 18px"> {{ i?.freightPrice }}{{ i?.freightTypeLabel }} </span>{{
{{ item.surcharge | currency }} i?.settlementBasisLabel }}{{
</ng-template> i?.ruleLabel
</st> }}
<div> </div>
<div> <st #st [data]="billExpenses" [columns]="logColumns" [ps]="0" [page]="{ show: false, showSize: false }">
总计:<span style="color: #da001b; font-size: 18px">{{ i?.totalAmount | currency }}</span> (运费{{ i?.totalFreight | currency }} <ng-template st-row="prices" let-item let-index="index">
附加费{{ i?.totalSurcharge | currency }},附加费率{{ (i?.totalRate * 100).toFixed(2)}}% {{ item.price + item.surcharge | currency }}
</div> </ng-template>
</div> <ng-template st-row="PriceType" let-item let-index="index"> 到付 </ng-template>
<div *ngIf ="i?.payeePhone && i?.payeePhone !== i?.driverPhone">车队长:{{ i?.payeeName }}{{ i?.payeePhone ? "/" + i?.payeePhone : ''}}</div> <ng-template st-row="price" let-item let-index="index"> {{item.price | currency}} </ng-template>
<ng-template st-row="surcharge" let-item let-index="index"> {{item.surcharge | currency}} </ng-template>
</st>
<div>
总计:<span style="color: #da001b; font-size: 18px">{{ i?.totalAmount | currency }}</span> (运费{{ i?.totalFreight |
currency }}
附加费{{ i?.totalSurcharge | currency }},附加费率{{ i?.totalRate * 100 | number: '0.2-2' }}%
</div>
<div *ngIf=" i?.payeeId !== i?.driverId" class="mt-xs">车队长:{{ i?.payeeName }}/{{ i?.payeePhone }}/{{ i?.payeeIdNo }}</div>
</nz-card> </nz-card>
<nz-card nzTitle="附件信息" #distannce4> <nz-card nzTitle="附件信息" #distannce4>
<sv-container> <sv-container>
<sv label="协议附件"> <sv label="协议附件">

View File

@ -4,7 +4,7 @@
* @Author : Shiming * @Author : Shiming
* @Date : 2021-12-06 20:20:26 * @Date : 2021-12-06 20:20:26
* @LastEditors : Shiming * @LastEditors : Shiming
* @LastEditTime : 2022-04-14 10:08:12 * @LastEditTime : 2022-04-15 09:58:13
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\bulk-detail\\bulk-detail.component.html * @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\bulk-detail\\bulk-detail.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved. * Copyright (C) 2022 huzhenhong. All rights reserved.
--> -->
@ -127,30 +127,36 @@
</div> </div>
</div> </div>
</nz-card> </nz-card>
<nz-card nzTitle="运费信息" #distannce3> <!--
<h2>{{i?.freightPrice}}{{i?.freightTypeLabel}}{{ i?.settlementBasisLabel ? i?.settlementBasisLabel + '' :' ' 结算依据为1时卸货时间不为空显示运费信息否则隐藏
}}{{i?.ruleLabel}}</h2> 结算依据为2时装货时间不为空显示运费信息否则隐藏
<st #st [data]="billExpenses" [columns]="logColumns" [ps]="0" [page]="{ show: false, showSize: false }"> -->
<ng-template st-row="PriceType" let-item let-index="index"> 到付 </ng-template> <nz-card [nzTitle]="priceTitel" #distannce3
<ng-template st-row="prices" let-item let-index="index"> [hidden]="!(i?.settlementBasis ==='1' && i?.unloadTime) && !(i?.settlementBasis ==='2' && i?.loadTime)">
{{ item.price + item.surcharge | currency }} <ng-template #priceTitel>
</ng-template> <span>运费信息</span><span
<ng-template st-row="price" let-item let-index="index"> style="padding-left: 24px; color: #f59a23;font-size: small;">到货后{{i?.goodsResource.paymentDays}}天内支付运费</span>
{{ item.price | currency }} </ng-template>
</ng-template> <div style="margin-bottom: 18px">
<ng-template st-row="surcharge" let-item let-index="index"> <span style="color: #da001b; font-size: 18px"> {{ i?.freightPrice }}{{ i?.freightTypeLabel }} </span>{{
{{ item.surcharge | currency }} i?.settlementBasisLabel }}{{
</ng-template> i?.ruleLabel
</st> }}
<div> </div>
<div> <st #st [data]="billExpenses" [columns]="logColumns" [ps]="0" [page]="{ show: false, showSize: false }">
总计:<span style="color: #da001b; font-size: 18px">{{ i?.totalAmount | currency }}</span> (运费{{ i?.totalFreight | <ng-template st-row="prices" let-item let-index="index">
currency }} {{ item.price + item.surcharge | currency }}
附加费{{ i?.totalSurcharge | currency }},附加费率{{ (i?.totalRate * 100).toFixed(2)}}% </ng-template>
</div> <ng-template st-row="PriceType" let-item let-index="index"> 到付 </ng-template>
</div> <ng-template st-row="price" let-item let-index="index"> {{item.price | currency}} </ng-template>
<div *ngIf="i?.payeePhone && i?.payeePhone !== i?.driverPhone">车队长:{{ i?.payeeName }}{{ i?.payeePhone ? "/" + <ng-template st-row="surcharge" let-item let-index="index"> {{item.surcharge | currency}} </ng-template>
i?.payeePhone : ''}}</div> </st>
<div>
总计:<span style="color: #da001b; font-size: 18px">{{ i?.totalAmount | currency }}</span> (运费{{ i?.totalFreight |
currency }}
附加费{{ i?.totalSurcharge | currency }},附加费率{{ i?.totalRate * 100 | number: '0.2-2' }}%
</div>
<div *ngIf=" i?.payeeId !== i?.driverId" class="mt-xs">车队长:{{ i?.payeeName }}/{{ i?.payeePhone }}/{{ i?.payeeIdNo }}</div>
</nz-card> </nz-card>
<nz-card nzTitle="附件信息" #distannce4> <nz-card nzTitle="附件信息" #distannce4>

View File

@ -4,7 +4,7 @@
* @Author : Shiming * @Author : Shiming
* @Date : 2021-12-23 13:39:58 * @Date : 2021-12-23 13:39:58
* @LastEditors : Shiming * @LastEditors : Shiming
* @LastEditTime : 2022-04-01 11:08:44 * @LastEditTime : 2022-04-15 10:07:20
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\vehicle-detail-change\\vehicle-detail-change.component.html * @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\vehicle-detail-change\\vehicle-detail-change.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved. * Copyright (C) 2022 huzhenhong. All rights reserved.
--> -->
@ -243,17 +243,19 @@
{{ item.price | currency }} {{ item.price | currency }}
</ng-template> </ng-template>
<ng-template st-row="prices" let-item let-index="index"> <ng-template st-row="prices" let-item let-index="index">
{{ item.price + item.surcharge | currency }} {{ item.price + item.surcharge | currency }}
</ng-template> </ng-template>
<ng-template st-row="surcharge" let-item let-index="index"> <ng-template st-row="surcharge" let-item let-index="index">
{{ item.surcharge | currency }} {{ item.surcharge | currency }}
</ng-template> </ng-template>
</st> </st>
<div> <div>
总计:<span style="color: #da001b; font-size: 18px">{{ i?.totalAmount | currency }}</span> (运费{{ i?.totalFreight | currency }} 总计:<span style="color: #da001b; font-size: 18px">{{ i?.totalAmount | currency }}</span> (运费{{ i?.totalFreight |
附加费{{ i?.totalSurcharge | currency }},附加费率{{ (i?.totalRate * 100).toFixed(2)}}% currency }}
附加费{{ i?.totalSurcharge | currency }},附加费率{{ (i?.totalRate * 100).toFixed(2) }}%
</div> </div>
<div *ngIf ="i?.payeePhone && i?.payeePhone !== i?.driverPhone">车队长:{{ i?.payeeName }}{{ i?.payeePhone ? "/" + i?.payeePhone : ''}}</div> <div *ngIf="i?.payeePhone && i?.payeePhone !== i?.driverPhone">车队长:{{ i?.payeeName }}{{ i?.payeePhone ? '/' +
i?.payeePhone : '' }}/{{ i?.payeeIdNo }}</div>
</nz-card> </nz-card>
<nz-card nzTitle="附件信息" #distannce4> <nz-card nzTitle="附件信息" #distannce4>

View File

@ -4,7 +4,7 @@
* @Author : Shiming * @Author : Shiming
* @Date : 2021-12-28 14:42:03 * @Date : 2021-12-28 14:42:03
* @LastEditors : Shiming * @LastEditors : Shiming
* @LastEditTime : 2022-04-14 10:09:03 * @LastEditTime : 2022-04-15 09:56:50
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\vehicle-detail\\vehicle-detail.component.html * @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\vehicle-detail\\vehicle-detail.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved. * Copyright (C) 2022 huzhenhong. All rights reserved.
--> -->
@ -158,7 +158,7 @@
附加费{{ i?.totalSurcharge | currency }},附加费率{{ (i?.totalRate * 100).toFixed(2) }}% 附加费{{ i?.totalSurcharge | currency }},附加费率{{ (i?.totalRate * 100).toFixed(2) }}%
</div> </div>
<div *ngIf="i?.payeePhone && i?.payeePhone !== i?.driverPhone">车队长:{{ i?.payeeName }}{{ i?.payeePhone ? '/' + <div *ngIf="i?.payeePhone && i?.payeePhone !== i?.driverPhone">车队长:{{ i?.payeeName }}{{ i?.payeePhone ? '/' +
i?.payeePhone : '' }}</div> i?.payeePhone : '' }}/{{ i?.payeeIdNo }}</div>
</nz-card> </nz-card>
<nz-card nzTitle="附件信息" #distannce4> <nz-card nzTitle="附件信息" #distannce4>

View File

@ -160,14 +160,11 @@ export class SupplyManagementBulkReleasePublishComponent implements OnInit {
allowClear: true, allowClear: true,
} as SFSelectWidgetSchema } as SFSelectWidgetSchema
}, },
// enterpriseInfoName: { enterpriseInfoNamer: {
// type: 'string', type: 'string',
// title: '网络货运人', title: '',
// ui: { ui: { hidden: true }
// widget: 'custom' },
// },
// default: '天津市怡亚通XXXX有限公司'
// },
enterpriseInfoId: { enterpriseInfoId: {
type: 'string', type: 'string',
title: '网络货运人', title: '网络货运人',
@ -175,7 +172,10 @@ export class SupplyManagementBulkReleasePublishComponent implements OnInit {
widget: 'select', widget: 'select',
placeholder: '请选择', placeholder: '请选择',
allowClear: true, allowClear: true,
asyncData: () => this.shipperSrv.getNetworkFreightForwarder() asyncData: () => this.shipperSrv.getNetworkFreightForwarder(),
change: (q: any, qs: any) => {
this.sf1.setValue('/enterpriseInfoNamer', qs.label);
}
} }
}, },
deadlineTime: { deadlineTime: {

View File

@ -173,9 +173,14 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
ui: { ui: {
widget: 'select', widget: 'select',
placeholder: '请选择', placeholder: '请选择',
allowClear: true allowClear: true,
} as SFSelectWidgetSchema } as SFSelectWidgetSchema
}, },
enterpriseInfoNamer: {
type: 'string',
title: '',
ui: { hidden: true }
},
enterpriseInfoName: { enterpriseInfoName: {
type: 'string', type: 'string',
title: '网络货运人', title: '网络货运人',
@ -184,7 +189,11 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
placeholder: '请选择', placeholder: '请选择',
allowClear: true, allowClear: true,
asyncData: () => this.shipperSrv.getNetworkFreightForwarder(), asyncData: () => this.shipperSrv.getNetworkFreightForwarder(),
change: () => this.payChange() change: (q: any, qs: any) => {
console.log(qs.label);
this.sf1.setValue('/enterpriseInfoNamer', qs.label);
this.payChange()
}
} }
}, },
externalResourceCode: { externalResourceCode: {
@ -753,8 +762,6 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
resourcetype: '1' resourcetype: '1'
}; };
this.service.request(this.service.$api_getCalculatedSurcharge, params).subscribe(res => { this.service.request(this.service.$api_getCalculatedSurcharge, params).subscribe(res => {
console.log('999');
console.log(this?.sf1.value);
if (res) { if (res) {
this.sf7.setValue('/appendFee', res.surcharge); this.sf7.setValue('/appendFee', res.surcharge);
this.sf7.setValue('/subtotal', subtotal); this.sf7.setValue('/subtotal', subtotal);

View File

@ -1,3 +1,13 @@
<!--
* @Description :
* @Version : 1.0
* @Author : Shiming
* @Date : 2022-03-23 14:24:05
* @LastEditors : Shiming
* @LastEditTime : 2022-04-15 15:18:33
* @FilePath : \\tms-obc-web\\src\\app\\routes\\supply-management\\components\\tran-agreement\\tran-agreement.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved.
-->
<nz-card class="card-height" > <nz-card class="card-height" >
<div [innerHTML]="agreement | safehtml"></div> <div [innerHTML]="agreement | safehtml"></div>
</nz-card> </nz-card>

View File

@ -4,7 +4,7 @@
* @Author : Shiming * @Author : Shiming
* @Date : 2022-02-24 20:19:51 * @Date : 2022-02-24 20:19:51
* @LastEditors : Shiming * @LastEditors : Shiming
* @LastEditTime : 2022-03-23 19:57:34 * @LastEditTime : 2022-04-15 15:18:29
* @FilePath : \\tms-obc-web\\src\\app\\routes\\supply-management\\components\\tran-agreement\\tran-agreement.component.ts * @FilePath : \\tms-obc-web\\src\\app\\routes\\supply-management\\components\\tran-agreement\\tran-agreement.component.ts
* Copyright (C) 2022 huzhenhong. All rights reserved. * Copyright (C) 2022 huzhenhong. All rights reserved.
*/ */
@ -60,7 +60,7 @@ export class TranAgreementComponent {
shipperLegalPersonName: this.enterpriseInfo.legalPersonName || '', //托运法定代表人 shipperLegalPersonName: this.enterpriseInfo.legalPersonName || '', //托运法定代表人
carrierLegalPersonName: this.enterpriseInfo.netLegalPersonName || '', //承运法定代表人 carrierLegalPersonName: this.enterpriseInfo.netLegalPersonName || '', //承运法定代表人
shipperName: this?.shipperName || '', //托运人 shipperName: this?.shipperName || '', //托运人
carrierName: this.object?.enterpriseInfoName || '', //承运人 carrierName: this.object?.enterpriseInfoNamer || this.object?.enterpriseInfoName || '', //承运人
consignorInfo: `${this.object?.unLoadingPlaceDTOList[0]?.appUserName || ''} ${ consignorInfo: `${this.object?.unLoadingPlaceDTOList[0]?.appUserName || ''} ${
this.object?.unLoadingPlaceDTOList[0]?.contractTelephone || '' this.object?.unLoadingPlaceDTOList[0]?.contractTelephone || ''
}`, // 发货信息 }`, // 发货信息
@ -98,7 +98,7 @@ export class TranAgreementComponent {
parametersDTO: { parametersDTO: {
contractCode: '', contractCode: '',
shipperName: this?.shipperName || '', //托运人 shipperName: this?.shipperName || '', //托运人
carrierName: this.object?.enterpriseInfoName || '', //承运人 carrierName: this.object?.enterpriseInfoNamer || this.object?.enterpriseInfoName || '', //承运人
shipperLegalPersonName: this.enterpriseInfo.legalPersonName || '', //托运法定代表人 shipperLegalPersonName: this.enterpriseInfo.legalPersonName || '', //托运法定代表人
carrierLegalPersonName: this.enterpriseInfo.netLegalPersonName || '', //承运法定代表人 carrierLegalPersonName: this.enterpriseInfo.netLegalPersonName || '', //承运法定代表人
consignorInfo: `${this.object.unLoadingPlaceDTOList[0]?.appUserName || ''} ${ consignorInfo: `${this.object.unLoadingPlaceDTOList[0]?.appUserName || ''} ${

View File

@ -298,6 +298,10 @@ export class TaxManagementIndividualCollectComponent implements OnInit {
* @param params 更新数据 * @param params 更新数据
*/ */
uploadSetting() { uploadSetting() {
if (this.selectedRows.length === 0) {
this.service.msgSrv.warning('请选择需要更新的数据');
return;
}
// this.service.request(this.service.$api_recall_reporting, { rows: this.selectedRows }).subscribe((res: any) => { // this.service.request(this.service.$api_recall_reporting, { rows: this.selectedRows }).subscribe((res: any) => {
// if (res) { // if (res) {
// this.service.msgSrv.success('更新成功'); // this.service.msgSrv.success('更新成功');

View File

@ -53,9 +53,12 @@ export class TaxManagementIndividualDeclareComponent implements OnInit {
* 查询参数 * 查询参数
*/ */
get reqParams() { get reqParams() {
const params = Object.assign({}, this.sf?.value || {}, { console.log();
declareStatus: this.selectedIndex
}); const params = Object.assign({}, this.sf?.value || {});
if (this.selectedIndex) {
params.declareStatus = this.selectedIndex;
}
delete params._$expand; delete params._$expand;
return { ...params }; return { ...params };
} }
@ -262,7 +265,14 @@ export class TaxManagementIndividualDeclareComponent implements OnInit {
{ title: '所属行业', index: 'hy', className: 'text-center', width: '200px' }, { title: '所属行业', index: 'hy', className: 'text-center', width: '200px' },
{ title: '征收项目', index: 'zsxm', className: 'text-center', width: '200px' }, { title: '征收项目', index: 'zsxm', className: 'text-center', width: '200px' },
{ title: '征收品目', index: 'zsmp', className: 'text-center', width: '200px' }, { title: '征收品目', index: 'zsmp', className: 'text-center', width: '200px' },
{ title: '计税依据', index: 'jsyj', className: 'text-center', width: '200px' }, {
title: '计税依据',
index: 'jsyj',
className: 'text-center',
width: '200px',
type: 'widget',
widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.ynse }) }
},
{ {
title: '税率', title: '税率',
index: 'sl', index: 'sl',
@ -279,14 +289,38 @@ export class TaxManagementIndividualDeclareComponent implements OnInit {
type: 'widget', type: 'widget',
widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.ynse }) } widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.ynse }) }
}, },
{ title: '减免税额', index: 'jmse', className: 'text-center', width: '180px' , type: 'widget', {
widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.jmse }) } }, title: '减免税额',
{ title: '已缴纳税额', index: 'yjnse', className: 'text-center', width: '180px', type: 'widget', index: 'jmse',
widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.yjnse }) } }, className: 'text-center',
{ title: '应代征税额', index: 'dzse', className: 'text-center', width: '180px', type: 'widget', width: '180px',
widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.dzse }) } }, type: 'widget',
{ title: '已代征税额', index: 'ydzse', className: 'text-center', width: '150px', type: 'widget', widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.jmse }) }
widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.ydzse }) } }, },
{
title: '已缴纳税额',
index: 'yjnse',
className: 'text-center',
width: '180px',
type: 'widget',
widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.yjnse }) }
},
{
title: '应代征税额',
index: 'dzse',
className: 'text-center',
width: '180px',
type: 'widget',
widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.dzse }) }
},
{
title: '已代征税额',
index: 'ydzse',
className: 'text-center',
width: '150px',
type: 'widget',
widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.ydzse }) }
},
{ title: '申报日期', render: 'sbrq', className: 'text-center', width: '150px' } { title: '申报日期', render: 'sbrq', className: 'text-center', width: '150px' }
]; ];
} }

View File

@ -56,37 +56,48 @@
<ng-template #requestedModal> <ng-template #requestedModal>
<div nz-row nzGutter="8"> <div nz-row nzGutter="8">
<div nz-col nzSpan="24" se-container [labelWidth]="100"> <div nz-col nzSpan="24" se-container [labelWidth]="100" [col]="1">
<se [col]="1" label="开票信息" class="mb-sm"> <se label="购买方" class="mb-sm">
<p style="margin: 0;">公司名: {{openInfo?.artoname}}</p> {{openInfo?.artoname}}
<p style="margin: 0;">税号: {{openInfo?.artotaxno}}</p>
<p style="margin: 0;">注册地址: {{openInfo?.artoadd}}</p>
<p style="margin: 0;">注册电话: {{openInfo?.artotel}}</p>
<p style="margin: 0;">开户行: {{openInfo?.artobank}}</p>
</se> </se>
<se [col]="1" label="服务名称" class="mb-sm"> <se label="纳税号" class="mb-sm">
{{openInfo?.artotaxno}}
</se>
<se label="注册地址" class="mb-sm">
{{openInfo?.artoadd}}
</se>
<se label="注册电话" class="mb-sm">
{{openInfo?.artotel}}
</se>
<se label="开户行" class="mb-sm">
{{openInfo?.artobank}}
</se>
<se label="银行账户" class="mb-sm">
{{openInfo?.artoacc}}
</se>
<se label="服务名称" class="mb-sm">
{{openInfo?.vatnameLabel}} {{openInfo?.vatnameLabel}}
</se> </se>
<se [col]="1" label="发票备注栏" class="mb-sm"> <se label="发票备注栏" class="mb-sm">
{{openInfo?.vatremarks}} {{openInfo?.vatremarks}}
</se> </se>
<se [col]="1" label="其它要求" class="mb-sm"> <se label="其它要求" class="mb-sm">
{{openInfo?.otherremarks}} {{openInfo?.otherremarks}}
</se> </se>
<se [col]="1" label="销货清单" class="mb-sm"> <se label="销货清单" class="mb-sm">
{{openInfo?.isdetail?'需要':'不需要'}} {{openInfo?.isdetail?'需要':'不需要'}}
</se> </se>
<se [col]="1" label="开票金额" class="mb-sm"> <se label="开票金额" class="mb-sm">
{{openInfo?.vatmoney | currency}} {{openInfo?.vatmoney | currency}}
</se> </se>
<se [col]="1" label="开票日期" required> <se label="开票日期" required>
<nz-date-picker [(ngModel)]="openInfo.invoicedate" nzPlaceHolder="请选择" style=" width: 100%;"> <nz-date-picker [(ngModel)]="openInfo.invoicedate" nzShowTime nzPlaceHolder="请选择" style=" width: 100%;">
</nz-date-picker> </nz-date-picker>
</se> </se>
<se [col]="1" label="发票号码" required> <se label="发票号码" required>
<input nz-input [(ngModel)]="openInfo.invoiceno" placeholder="请输入" /> <input nz-input [(ngModel)]="openInfo.invoiceno" placeholder="请输入" />
</se> </se>
<se [col]="1" label="发票代码" required> <se label="发票代码" required>
<input nz-input [(ngModel)]="openInfo.invoiceno2" placeholder="请输入" /> <input nz-input [(ngModel)]="openInfo.invoiceno2" placeholder="请输入" />
</se> </se>
</div> </div>

View File

@ -89,7 +89,6 @@ export class CancellationInvoiceComponent implements OnInit {
this.openInfo = { invoicedate: null, invoiceno: null, invoiceno2: null }; this.openInfo = { invoicedate: null, invoiceno: null, invoiceno2: null };
this.service.request(this.service.$api_get_apply_fico_info, { id: item.vatappHId }).subscribe(info => { this.service.request(this.service.$api_get_apply_fico_info, { id: item.vatappHId }).subscribe(info => {
if (info) { if (info) {
console.log(info);
Object.assign(this.openInfo, { ...info }); Object.assign(this.openInfo, { ...info });
const modal = this.nzModalService.create({ const modal = this.nzModalService.create({
nzTitle: '发票确认', nzTitle: '发票确认',

View File

@ -48,6 +48,7 @@ export class ETCBlacklistComponent implements OnInit {
...this.sf.value ...this.sf.value
}); });
} }
this.selectedRows = [];
return requestOptions; return requestOptions;
}; };
@ -226,7 +227,7 @@ export class ETCBlacklistComponent implements OnInit {
} }
} }
}, },
params4: { carNo: {
title: '车牌号', title: '车牌号',
type: 'string', type: 'string',
ui: { ui: {
@ -236,7 +237,7 @@ export class ETCBlacklistComponent implements OnInit {
} }
} }
}, },
params5: { carOwner: {
title: '车辆所有人', title: '车辆所有人',
type: 'string', type: 'string',
ui: { ui: {

View File

@ -167,18 +167,18 @@ export class ETCInvoicedLogsComponent implements OnInit {
return [ return [
{ title: '发票号码', index: 'invoiceNum', width: 100, type: 'link', click: item => this.routeTo(item) }, { title: '发票号码', index: 'invoiceNum', width: 100, type: 'link', click: item => this.routeTo(item) },
{ title: '发票代码', index: 'invoiceCode', width: 130 }, { title: '发票代码', index: 'invoiceCode', width: 130 },
{ title: '订单号', index: 'billCode', width: 140 }, { title: '订单号', index: 'billCode', width: 180 },
{ title: '运单号', index: 'waybillCode', width: 140 }, { title: '运单号', index: 'waybillCode', width: 180 },
{ title: '入站口', index: 'enStationName', width: 100 }, { title: '入站口', index: 'enStationName', width: 100 },
{ title: '出站口', index: 'exStationName', width: 100 }, { title: '出站口', index: 'exStationName', width: 100 },
{ title: '司机', render: 'call3No', width: 140 }, { title: '司机', render: 'call3No', width: 140 },
{ title: '车牌号', index: 'carNo', width: 100 }, { title: '车牌号', index: 'carNo', width: 100 },
{ title: '里程km', index: 'mileage', width: 120 }, // { title: '里程km', index: 'mileage', width: 120 },
{ title: '交易id', index: 'tradeId', width: 200 }, { title: '交易id', index: 'tradeId', width: 200 },
{ {
title: '交易金额(元)', title: '交易金额(元)',
index: 'fee', index: 'fee',
width: 130, width: 150,
type: 'widget', type: 'widget',
className: 'text-right', className: 'text-right',
widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.fee }) } widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.fee }) }
@ -195,7 +195,7 @@ export class ETCInvoicedLogsComponent implements OnInit {
{ {
title: '税额(元)', title: '税额(元)',
index: 'totalTaxAmount', index: 'totalTaxAmount',
width: 120, width: 150,
type: 'widget', type: 'widget',
className: 'text-right', className: 'text-right',
widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.totalTaxAmount }) } widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.totalTaxAmount }) }
@ -203,15 +203,15 @@ export class ETCInvoicedLogsComponent implements OnInit {
{ {
title: '价税合计(元)', title: '价税合计(元)',
index: 'totalAmount', index: 'totalAmount',
width: 130, width: 150,
type: 'widget', type: 'widget',
className: 'text-right font-weight-bold', className: 'text-right font-weight-bold',
widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.totalAmount }) } widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.totalAmount }) }
}, },
{ title: '交易时间', index: 'exTime', type: 'date', width: 150 }, { title: '交易时间', index: 'exTime', type: 'date', width: 150 },
{ title: '开票日期', index: 'invoiceMakeTime', type: 'date', width: 150 }, { title: '开票日期', index: 'invoiceMakeTime', type: 'date', width: 150 },
{ title: '销售方', index: 'sellerName', width: 90 }, { title: '销售方', index: 'sellerName', width: 150 },
{ title: '网络货运人', index: 'enterpriseInfoName', width: 120 } { title: '网络货运人', index: 'enterpriseInfoName', width: 220 }
]; ];
} }
} }

View File

@ -195,7 +195,7 @@ export class ETCInvoicedRequestedComponent implements OnInit {
} }
} }
}, },
ltdId: { enterpriseInfoName: {
type: 'string', type: 'string',
title: '网络货运人', title: '网络货运人',
ui: { ui: {
@ -223,6 +223,8 @@ export class ETCInvoicedRequestedComponent implements OnInit {
{ title: '卸货地', index: 'dischargePlace', width: '220px' }, { title: '卸货地', index: 'dischargePlace', width: '220px' },
{ title: '司机信息', render: 'call1No', width: '140px' }, { title: '司机信息', render: 'call1No', width: '140px' },
{ title: '车辆信息', render: 'call1N2o', width: '200px' }, { title: '车辆信息', render: 'call1N2o', width: '200px' },
{ title: '车牌颜色', index: 'licenseCarNOColor', width: '140px' },
{ title: '车辆是否已备案', index: 'putOnRecord', width: '150px', type: 'enum', enum: { false: '否', true: '是' } },
{ title: '托运人', index: 'shipperAppUserName', width: '140px' }, { title: '托运人', index: 'shipperAppUserName', width: '140px' },
{ title: '网络货运人', index: 'enterpriseInfoName', width: '220px' }, { title: '网络货运人', index: 'enterpriseInfoName', width: '220px' },
{ title: '接单时间', index: 'orderReceivingTime', type: 'date', width: '150px' }, { title: '接单时间', index: 'orderReceivingTime', type: 'date', width: '150px' },

View File

@ -342,7 +342,9 @@ export class InvoiceRequestedDetailComponent implements OnInit {
title: '税率', title: '税率',
index: 'billvatrate', index: 'billvatrate',
width: 90, width: 90,
format: item => `${item.billvatrate ? ((item.billvatrate as number) * 100).toFixed(2) : 0}%` format: item => `9.00%`
// bugfix 6976
// format: item => `${item.billvatrate ? ((item.billvatrate as number) * 100).toFixed(2) : 0}%`
}, },
{ title: '发票号码', index: 'vatinvcode', width: 100 }, { title: '发票号码', index: 'vatinvcode', width: 100 },
{ title: '开票日期', index: 'vatinvtime', type: 'date', width: 150 } { title: '开票日期', index: 'vatinvtime', type: 'date', width: 150 }

View File

@ -234,7 +234,9 @@
[nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'"> [nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'">
</ng-container> </ng-container>
<ng-template #enterpriseAddresselseTemplate> <ng-template #enterpriseAddresselseTemplate>
<span style="word-break:break-all ">{{detailData.enterpriseAddress}}</span> <span style="word-break:break-all "> {{ detailData?.fullRegionVO?.provinceName }}{{
detailData?.fullRegionVO?.cityName }}{{
detailData?.fullRegionVO?.areaName }}{{detailData.enterpriseAddress}}</span>
</ng-template> </ng-template>
</sv> </sv>
<sv label="经营范围" col="1"> <sv label="经营范围" col="1">
@ -370,16 +372,16 @@
{{partnerInfo.partnerEnterpriseName}} {{partnerInfo.partnerEnterpriseName}}
</sv> </sv>
<sv label="手机号"> <sv label="手机号">
<input nz-input type="text" [(ngModel)]="partnerInfo.partnerContactMobile" [readonly]="!isEdit" [nzBorderless]="!isEdit" <input nz-input type="text" [(ngModel)]="partnerInfo.partnerContactMobile" [readonly]="!isEdit"
[placeholder]="isEdit?'':'-'"> [nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'">
</sv> </sv>
<sv label="管理员"> <sv label="管理员">
<!-- <input nz-input type="text" [(ngModel)]="partnerInfo.partnerContactName + ' ' + partnerInfo.partnerContactMobile" [readonly]="!isEdit" [nzBorderless]="!isEdit" <!-- <input nz-input type="text" [(ngModel)]="partnerInfo.partnerContactName + ' ' + partnerInfo.partnerContactMobile" [readonly]="!isEdit" [nzBorderless]="!isEdit"
[placeholder]="isEdit?'':'-'"> --> [placeholder]="isEdit?'':'-'"> -->
</sv> </sv>
<sv label="绑定时间"> <sv label="绑定时间">
<input nz-input type="text" [(ngModel)]="partnerInfo.enterprisePartnerRelTime" [readonly]="!isEdit" [nzBorderless]="!isEdit" <input nz-input type="text" [(ngModel)]="partnerInfo.enterprisePartnerRelTime" [readonly]="!isEdit"
[placeholder]="isEdit?'':'-'"> [nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'">
</sv> </sv>
<sv label="结算时间段"> <sv label="结算时间段">
<input nz-input type="text" [(ngModel)]="partnerInfo.settStartTime" [readonly]="!isEdit" [nzBorderless]="!isEdit" <input nz-input type="text" [(ngModel)]="partnerInfo.settStartTime" [readonly]="!isEdit" [nzBorderless]="!isEdit"
@ -398,36 +400,38 @@
[placeholder]="isEdit?'':'-'"> [placeholder]="isEdit?'':'-'">
</sv> </sv>
<sv label="绑定时间"> <sv label="绑定时间">
<input nz-input type="text" [(ngModel)]="partnerInfo.enterpriseChannelRelTime" [readonly]="!isEdit" [nzBorderless]="!isEdit" <input nz-input type="text" [(ngModel)]="partnerInfo.enterpriseChannelRelTime" [readonly]="!isEdit"
[placeholder]="isEdit?'':'-'"> [nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'">
</sv> </sv>
</sv-container> </sv-container>
</nz-card> </nz-card>
<nz-card> <nz-card>
<nz-tabset > <nz-tabset>
<nz-tab nzTitle="修改合伙人记录"> <nz-tab nzTitle="修改合伙人记录">
<st #st [data]="service.$api_findEnterpricePartnerRelLog" [columns]="columns" <st #st [data]="service.$api_findEnterpricePartnerRelLog" [columns]="columns"
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParamsCar }" [req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParamsCar }"
[res]="{ reName: { list: 'data'} }" [page]="{ show: true, showSize: true, pageSizes: [20, 50, 100] }" [res]="{ reName: { list: 'data'} }" [page]="{ show: true, showSize: true, pageSizes: [20, 50, 100] }"
[loading]="service.http.loading"> [loading]="service.http.loading">
<ng-template st-row="remark" let-item let-index="index"> <ng-template st-row="remark" let-item let-index="index">
<span *ngIf="item.remark" class="overflowText" nz-tooltip [nzTooltipTitle]="item.remark">{{ item.remark }}</span> <span *ngIf="item.remark" class="overflowText" nz-tooltip [nzTooltipTitle]="item.remark">{{ item.remark
<span *ngIf="item.remark === null">--</span> }}</span>
</ng-template> <span *ngIf="item.remark === null">--</span>
</st> </ng-template>
</nz-tab> </st>
<nz-tab nzTitle="修改渠道销售记录"> </nz-tab>
<st #st1 multiSort bordered [columns]="recordColumns" [ps]="20" [data]="service.$api_findEnterpriceChannelRelLog" <nz-tab nzTitle="修改渠道销售记录">
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }" <st #st1 multiSort bordered [columns]="recordColumns" [ps]="20" [data]="service.$api_findEnterpriceChannelRelLog"
[res]="{ reName: { list: 'data.records', total: 'data.total' } }" [req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }"
[page]="{ show: true, showSize: true, pageSizes: [20, 50, 100] }" [loading]="service.http.loading"> [res]="{ reName: { list: 'data.records', total: 'data.total' } }"
<ng-template st-row="remark" let-item let-index="index"> [page]="{ show: true, showSize: true, pageSizes: [20, 50, 100] }" [loading]="service.http.loading">
<span *ngIf="item.remark" class="overflowText" nz-tooltip [nzTooltipTitle]="item.remark">{{ item.remark }}</span> <ng-template st-row="remark" let-item let-index="index">
<span *ngIf="item.remark === null">--</span> <span *ngIf="item.remark" class="overflowText" nz-tooltip [nzTooltipTitle]="item.remark">{{ item.remark
</ng-template> }}</span>
</st> <span *ngIf="item.remark === null">--</span>
</nz-tab> </ng-template>
</nz-tabset> </st>
</nz-tab>
</nz-tabset>
</nz-card> </nz-card>
<ng-template #PopconfirmTempalte let-title="title" let-content="content"> <ng-template #PopconfirmTempalte let-title="title" let-content="content">
<div class="ant-popover-message"> <div class="ant-popover-message">

View File

@ -15,11 +15,15 @@
<span *ngIf="detailData?.approvalStatus === 20 || detailData?.approvalStatus === '20'">已审核</span> <span *ngIf="detailData?.approvalStatus === 20 || detailData?.approvalStatus === '20'">已审核</span>
<span *ngIf="detailData?.approvalStatus === 30 || detailData?.approvalStatus === '30'">已驳回</span> <span *ngIf="detailData?.approvalStatus === 30 || detailData?.approvalStatus === '30'">已驳回</span>
<span *ngIf="detailData?.approvalStatus === 40 || detailData?.approvalStatus === '40'">证件过期</span> <span *ngIf="detailData?.approvalStatus === 40 || detailData?.approvalStatus === '40'">证件过期</span>
<div style="float: right;" *ngIf="detailData?.approvalStatus === 10 || detailData?.approvalStatus === '10'"> <div style="float: right;" *ngIf="detailData?.approvalStatus !== 20 && detailData?.approvalStatus !== '20'">
<ng-container *ngIf="!isEdit "> <ng-container *ngIf="!isEdit ">
<button nz-button nzType="default" nzDanger (click)="approveDriver()" acl acl-ability="VEHICLE-AUDIT-DETAIL-pass">通过</button> <button nz-button nzType="default" nzDanger (click)="approveDriver()" acl
<button nz-button nzType="default" nzDanger (click)="rejectedDriver()" acl acl-ability="VEHICLE-AUDIT-DETAIL-reject">驳回</button> acl-ability="VEHICLE-AUDIT-DETAIL-pass">通过</button>
<button nz-button nzType="default" nzDanger (click)="ratify()" acl acl-ability="VEHICLE-AUDIT-DETAIL-save">修改</button> <button nz-button nzType="default" nzDanger (click)="rejectedDriver()" acl
acl-ability="VEHICLE-AUDIT-DETAIL-reject"
*ngIf="detailData?.approvalStatus === 10 || detailData?.approvalStatus === '10'">驳回</button>
<button nz-button nzType="default" nzDanger (click)="ratify()" acl
acl-ability="VEHICLE-AUDIT-DETAIL-save">修改</button>
</ng-container> </ng-container>
<ng-container *ngIf="isEdit"> <ng-container *ngIf="isEdit">
<button nz-button nzType="default" (click)="reset()">取消</button> <button nz-button nzType="default" (click)="reset()">取消</button>
@ -44,54 +48,42 @@
</sv-title> </sv-title>
<sv label="车牌颜色"> <sv label="车牌颜色">
<nz-select [(ngModel)]="detailData.carNoColor" [nzPlaceHolder]="isEdit?'':'-'" [nzBorderless]="!isEdit" <nz-select [(ngModel)]="detailData.carNoColor" [nzPlaceHolder]="isEdit?'':'-'" [nzBorderless]="!isEdit"
[nzShowArrow]="isEdit" [nzDisabled]="!isEdit"> [nzShowArrow]="isEdit" [nzDisabled]="!isEdit">
<nz-option <nz-option *ngFor="let i of contenCarNoColor" [nzLabel]="i.label" [nzValue]="i.value"></nz-option>
*ngFor="let i of contenCarNoColor"
[nzLabel]="i.label"
[nzValue]="i.value"
></nz-option>
</nz-select> </nz-select>
</sv> </sv>
<sv label="车型"> <sv label="车型">
<nz-select [(ngModel)]="detailData.carModel" [nzPlaceHolder]="isEdit?'':'-'" [nzBorderless]="!isEdit" <nz-select [(ngModel)]="detailData.carModel" [nzPlaceHolder]="isEdit?'':'-'" [nzBorderless]="!isEdit"
[nzShowArrow]="isEdit" [nzDisabled]="!isEdit"> [nzShowArrow]="isEdit" [nzDisabled]="!isEdit">
<nz-option <nz-option *ngFor="let i of contencarModel" [nzLabel]="i.label" [nzValue]="i.value"></nz-option>
*ngFor="let i of contencarModel"
[nzLabel]="i.label"
[nzValue]="i.value"
></nz-option>
</nz-select> </nz-select>
</sv> </sv>
<sv label="车长"> <sv label="车长">
<nz-select [(ngModel)]="detailData.carLength" [nzPlaceHolder]="isEdit?'':'-'" [nzBorderless]="!isEdit" <nz-select [(ngModel)]="detailData.carLength" [nzPlaceHolder]="isEdit?'':'-'" [nzBorderless]="!isEdit"
[nzShowArrow]="isEdit" [nzDisabled]="!isEdit"> [nzShowArrow]="isEdit" [nzDisabled]="!isEdit">
<nz-option <nz-option *ngFor="let i of contenCarLength" [nzLabel]="i.label" [nzValue]="i.value"></nz-option>
*ngFor="let i of contenCarLength" </nz-select>
[nzLabel]="i.label"
[nzValue]="i.value"
></nz-option>
</nz-select>
</sv> </sv>
<sv label="是否为挂车"> <sv label="是否为挂车">
<nz-select [(ngModel)]="detailData.isTrailer" [nzPlaceHolder]="isEdit?'':'-'" [nzBorderless]="!isEdit" <nz-select [(ngModel)]="detailData.isTrailer" [nzPlaceHolder]="isEdit?'':'-'" [nzBorderless]="!isEdit"
[nzShowArrow]="isEdit" [nzDisabled]="!isEdit"> [nzShowArrow]="isEdit" [nzDisabled]="!isEdit">
<nz-option [nzValue]="false" nzLabel="否"></nz-option> <nz-option [nzValue]="false" nzLabel="否"></nz-option>
<nz-option [nzValue]="true" nzLabel="是"></nz-option> <nz-option [nzValue]="true" nzLabel="是"></nz-option>
</nz-select> </nz-select>
</sv> </sv>
<sv label="是否挂靠"> <sv label="是否挂靠">
<nz-select [(ngModel)]="detailData.isSelf" [nzPlaceHolder]="isEdit?'':'-'" [nzBorderless]="!isEdit" <nz-select [(ngModel)]="detailData.isSelf" [nzPlaceHolder]="isEdit?'':'-'" [nzBorderless]="!isEdit"
[nzShowArrow]="isEdit" [nzDisabled]="!isEdit"> [nzShowArrow]="isEdit" [nzDisabled]="!isEdit">
<nz-option [nzValue]="false" nzLabel="否"></nz-option> <nz-option [nzValue]="false" nzLabel="否"></nz-option>
<nz-option [nzValue]="true" nzLabel="是"></nz-option> <nz-option [nzValue]="true" nzLabel="是"></nz-option>
</nz-select> </nz-select>
</sv> </sv>
</sv-container> </sv-container>
<sv-container col="1" class="mt-md"> <sv-container col="1" class="mt-md">
<sv label="车头照"> <sv label="车头照">
<ng-container <ng-container
*ngTemplateOutlet="uploadTemplate;context:{image:detailData?.carFrontPhotoWatermark,key:'carFrontPhotoWatermark',hover: 'PhotoWatermark2'}"> *ngTemplateOutlet="uploadTemplate;context:{image:detailData?.carFrontPhotoWatermark,key:'carFrontPhotoWatermark',hover: 'PhotoWatermark2'}">
</ng-container> </ng-container>
</sv> </sv>
</sv-container> </sv-container>
<nz-divider></nz-divider> <nz-divider></nz-divider>
@ -100,26 +92,26 @@
<sv-title style="font-weight: 700;">行驶证信息</sv-title> <sv-title style="font-weight: 700;">行驶证信息</sv-title>
<sv label="档案编号"> <sv label="档案编号">
<input nz-input type="text" [(ngModel)]="detailData.archivesNo" [readonly]="!isEdit" [nzBorderless]="!isEdit" <input nz-input type="text" [(ngModel)]="detailData.archivesNo" [readonly]="!isEdit" [nzBorderless]="!isEdit"
[placeholder]="isEdit?'':'-'"> [placeholder]="isEdit?'':'-'">
</sv> </sv>
<sv label="行驶证注册日期"> <sv label="行驶证注册日期">
<!-- <input nz-input type="text" [(ngModel)]="detailData.driverLicenseRegisterTime" [readonly]="!isEdit" [nzBorderless]="!isEdit" <!-- <input nz-input type="text" [(ngModel)]="detailData.driverLicenseRegisterTime" [readonly]="!isEdit" [nzBorderless]="!isEdit"
[placeholder]="isEdit?'':'-'"> --> [placeholder]="isEdit?'':'-'"> -->
<nz-date-picker [(ngModel)]="detailData.driverLicenseRegisterTime" [nzDisabled]="!isEdit" <nz-date-picker [(ngModel)]="detailData.driverLicenseRegisterTime" [nzDisabled]="!isEdit"
[nzPlaceHolder]="isEdit?'':'-'" [nzBorderless]="!isEdit" [nzSuffixIcon]="isEdit?'calendar':''"></nz-date-picker> [nzPlaceHolder]="isEdit?'':'-'" [nzBorderless]="!isEdit" [nzSuffixIcon]="isEdit?'calendar':''"></nz-date-picker>
</sv> </sv>
</sv-container> </sv-container>
<sv-container col="3"> <sv-container col="3">
<sv label="行驶证到期日"> <sv label="行驶证到期日">
<!-- <input nz-input type="text" [(ngModel)]="detailData.driverLicenseEndTime" [readonly]="!isEdit" [nzBorderless]="!isEdit" <!-- <input nz-input type="text" [(ngModel)]="detailData.driverLicenseEndTime" [readonly]="!isEdit" [nzBorderless]="!isEdit"
[placeholder]="isEdit?'':'-'"> --> [placeholder]="isEdit?'':'-'"> -->
<nz-date-picker [(ngModel)]="detailData.driverLicenseEndTime" [nzDisabled]="!isEdit" <nz-date-picker [(ngModel)]="detailData.driverLicenseEndTime" [nzDisabled]="!isEdit"
[nzPlaceHolder]="isEdit?'':'-'" [nzBorderless]="!isEdit" [nzSuffixIcon]="isEdit?'calendar':''"></nz-date-picker> [nzPlaceHolder]="isEdit?'':'-'" [nzBorderless]="!isEdit" [nzSuffixIcon]="isEdit?'calendar':''"></nz-date-picker>
</sv> </sv>
<sv label="行驶证签发机关"> <sv label="行驶证签发机关">
<input nz-input style="width: '300px'" type="text" [(ngModel)]="detailData.driverLicenseSigningOrg" [readonly]="!isEdit" [nzBorderless]="!isEdit" <input nz-input style="width: '300px'" type="text" [(ngModel)]="detailData.driverLicenseSigningOrg"
[placeholder]="isEdit?'':'-'"> [readonly]="!isEdit" [nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'">
</sv> </sv>
</sv-container> </sv-container>
@ -128,11 +120,11 @@
<!-- <input nz-input type="text" [(ngModel)]="detailData.driverLicenseGetTime" [readonly]="!isEdit" [nzBorderless]="!isEdit" <!-- <input nz-input type="text" [(ngModel)]="detailData.driverLicenseGetTime" [readonly]="!isEdit" [nzBorderless]="!isEdit"
[placeholder]="isEdit?'':'-'"> --> [placeholder]="isEdit?'':'-'"> -->
<nz-date-picker [(ngModel)]="detailData.driverLicenseGetTime" [nzDisabled]="!isEdit" <nz-date-picker [(ngModel)]="detailData.driverLicenseGetTime" [nzDisabled]="!isEdit"
[nzPlaceHolder]="isEdit?'':'-'" [nzBorderless]="!isEdit" [nzSuffixIcon]="isEdit?'calendar':''"></nz-date-picker> [nzPlaceHolder]="isEdit?'':'-'" [nzBorderless]="!isEdit" [nzSuffixIcon]="isEdit?'calendar':''"></nz-date-picker>
</sv> </sv>
<sv label="车辆识别代码"> <sv label="车辆识别代码">
<input nz-input type="text" [(ngModel)]="detailData.carDistinguishCode" [readonly]="!isEdit" [nzBorderless]="!isEdit" <input nz-input type="text" [(ngModel)]="detailData.carDistinguishCode" [readonly]="!isEdit"
[placeholder]="isEdit?'':'-'"> [nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'">
</sv> </sv>
<sv label="使用性质"> <sv label="使用性质">
<nz-select [(ngModel)]="detailData.useNature" [nzPlaceHolder]="isEdit?'':'-'" [nzBorderless]="!isEdit" <nz-select [(ngModel)]="detailData.useNature" [nzPlaceHolder]="isEdit?'':'-'" [nzBorderless]="!isEdit"
@ -146,15 +138,15 @@
<sv-container col="3"> <sv-container col="3">
<sv label="载重(吨)"> <sv label="载重(吨)">
<input nz-input type="text" [(ngModel)]="detailData.carLoad" [readonly]="!isEdit" [nzBorderless]="!isEdit" <input nz-input type="text" [(ngModel)]="detailData.carLoad" [readonly]="!isEdit" [nzBorderless]="!isEdit"
[placeholder]="isEdit?'':'-'"> [placeholder]="isEdit?'':'-'">
</sv> </sv>
<sv label="整备质量"> <sv label="整备质量">
<input nz-input type="text" [(ngModel)]="detailData.curbWeight" [readonly]="!isEdit" [nzBorderless]="!isEdit" <input nz-input type="text" [(ngModel)]="detailData.curbWeight" [readonly]="!isEdit" [nzBorderless]="!isEdit"
[placeholder]="isEdit?'':'-'"> [placeholder]="isEdit?'':'-'">
</sv> </sv>
<sv label="所有人"> <sv label="所有人">
<input nz-input style="width: '300px'" type="text" [(ngModel)]="detailData.carOwner" [readonly]="!isEdit" [nzBorderless]="!isEdit" <input nz-input style="width: '300px'" type="text" [(ngModel)]="detailData.carOwner" [readonly]="!isEdit"
[placeholder]="isEdit?'':'-'"> [nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'">
</sv> </sv>
</sv-container> </sv-container>
<sv-container col="1"> <sv-container col="1">
@ -162,7 +154,7 @@
<ng-container <ng-container
*ngTemplateOutlet="uploadTemplate;context:{image:detailData?.certificatePhotoFrontWatermark,key:'certificatePhotoFrontWatermark',hover: 'FrontWatermark'}"> *ngTemplateOutlet="uploadTemplate;context:{image:detailData?.certificatePhotoFrontWatermark,key:'certificatePhotoFrontWatermark',hover: 'FrontWatermark'}">
</ng-container> </ng-container>
<ng-container <ng-container
*ngTemplateOutlet="uploadTemplate;context:{image:detailData?.certificatePhotoBackWatermark,key:'certificatePhotoBackWatermark',hover: 'BackWatermark'}"> *ngTemplateOutlet="uploadTemplate;context:{image:detailData?.certificatePhotoBackWatermark,key:'certificatePhotoBackWatermark',hover: 'BackWatermark'}">
</ng-container> </ng-container>
</sv> </sv>
@ -172,28 +164,28 @@
<sv-title style="font-weight: 700;">道路运输证信息</sv-title> <sv-title style="font-weight: 700;">道路运输证信息</sv-title>
<sv label="道路运输证号"> <sv label="道路运输证号">
<input nz-input type="text" [(ngModel)]="detailData.roadTransportNo" [readonly]="!isEdit" [nzBorderless]="!isEdit" <input nz-input type="text" [(ngModel)]="detailData.roadTransportNo" [readonly]="!isEdit" [nzBorderless]="!isEdit"
[placeholder]="isEdit?'':'-'"> [placeholder]="isEdit?'':'-'">
</sv> </sv>
<sv label="经营许可证号"> <sv label="经营许可证号">
<input nz-input type="text" [(ngModel)]="detailData.roadTransportLicenceNo" [readonly]="!isEdit" [nzBorderless]="!isEdit" <input nz-input type="text" [(ngModel)]="detailData.roadTransportLicenceNo" [readonly]="!isEdit"
[placeholder]="isEdit?'':'-'"> [nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'">
</sv> </sv>
<sv label="发证日期"> <sv label="发证日期">
<!-- <input nz-input type="text" [(ngModel)]="detailData.roadTransportStartTime" [readonly]="!isEdit" [nzBorderless]="!isEdit" <!-- <input nz-input type="text" [(ngModel)]="detailData.roadTransportStartTime" [readonly]="!isEdit" [nzBorderless]="!isEdit"
[placeholder]="isEdit?'':'-'"> --> [placeholder]="isEdit?'':'-'"> -->
<nz-date-picker [(ngModel)]="detailData.roadTransportStartTime" [nzDisabled]="!isEdit" <nz-date-picker [(ngModel)]="detailData.roadTransportStartTime" [nzDisabled]="!isEdit"
[nzPlaceHolder]="isEdit?'':'-'" [nzBorderless]="!isEdit" [nzSuffixIcon]="isEdit?'calendar':''"></nz-date-picker> [nzPlaceHolder]="isEdit?'':'-'" [nzBorderless]="!isEdit" [nzSuffixIcon]="isEdit?'calendar':''"></nz-date-picker>
</sv> </sv>
<sv label="有效期至"> <sv label="有效期至">
<!-- <input nz-input type="text" [(ngModel)]="detailData.roadTransportEndTime" [readonly]="!isEdit" [nzBorderless]="!isEdit" <!-- <input nz-input type="text" [(ngModel)]="detailData.roadTransportEndTime" [readonly]="!isEdit" [nzBorderless]="!isEdit"
[placeholder]="isEdit?'':'-'"> --> [placeholder]="isEdit?'':'-'"> -->
<nz-date-picker [(ngModel)]="detailData.roadTransportEndTime" [nzDisabled]="!isEdit" <nz-date-picker [(ngModel)]="detailData.roadTransportEndTime" [nzDisabled]="!isEdit"
[nzPlaceHolder]="isEdit?'':'-'" [nzBorderless]="!isEdit" [nzSuffixIcon]="isEdit?'calendar':''"></nz-date-picker> [nzPlaceHolder]="isEdit?'':'-'" [nzBorderless]="!isEdit" [nzSuffixIcon]="isEdit?'calendar':''"></nz-date-picker>
</sv> </sv>
<sv label="道路运输证照片"> <sv label="道路运输证照片">
<ng-container <ng-container
*ngTemplateOutlet="uploadTemplate;context:{image:detailData?.roadTransportPhotoWatermark,key:'roadTransportPhotoWatermark', hover: 'Watermark'}" > *ngTemplateOutlet="uploadTemplate;context:{image:detailData?.roadTransportPhotoWatermark,key:'roadTransportPhotoWatermark', hover: 'Watermark'}">
</ng-container> </ng-container>
</sv> </sv>
</sv-container> </sv-container>
<nz-divider></nz-divider> <nz-divider></nz-divider>
@ -201,8 +193,7 @@
<sv-title style="font-weight: 700;">认证司机</sv-title> <sv-title style="font-weight: 700;">认证司机</sv-title>
</sv-container> </sv-container>
<st #st [bordered]="true" [columns]="columns" [data]="service.$api_get_queryDriverByCarId" <st #st [bordered]="true" [columns]="columns" [data]="service.$api_get_queryDriverByCarId"
[req]="{ method: 'POST', allInBody: true, params: reqParams }" [req]="{ method: 'POST', allInBody: true, params: reqParams }" [res]="{ reName: { list: 'data', total: 'data' } }"
[res]="{ reName: { list: 'data', total: 'data' } }"
[ngStyle]="{ margin: '1rem 0' }" multiSort size="small" [page]="{ show: false }"> [ngStyle]="{ margin: '1rem 0' }" multiSort size="small" [page]="{ show: false }">
<ng-template st-row="auditStatusEnum" let-item let-index="index"> <ng-template st-row="auditStatusEnum" let-item let-index="index">
<div> <div>

View File

@ -1,7 +1,7 @@
<!-- <!--
* @Author: your name * @Author: your name
* @Date: 2021-12-24 15:38:08 * @Date: 2021-12-24 15:38:08
* @LastEditTime : 2022-04-13 20:05:09 * @LastEditTime : 2022-04-15 16:42:10
* @LastEditors : Shiming * @LastEditors : Shiming
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE * @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath : \\tms-obc-web\\src\\app\\routes\\waybill-management\\components\\abnormal-appear\\abnormal-appear.component.html * @FilePath : \\tms-obc-web\\src\\app\\routes\\waybill-management\\components\\abnormal-appear\\abnormal-appear.component.html
@ -42,7 +42,7 @@
</nz-card> </nz-card>
<nz-card class="content-box"> <nz-card class="content-box">
<nz-tabset [(nzSelectedIndex)]="selectedIndex"> <nz-tabset [(nzSelectedIndex)]="selectedIndex" (nzSelectedIndexChange)="selectChange($event)">
<nz-tab [nzTitle]="'待回复(' + tabs?.stayQuantity + ')'"> <nz-tab [nzTitle]="'待回复(' + tabs?.stayQuantity + ')'">
<st <st
#st #st
@ -69,12 +69,12 @@
</ng-template> </ng-template>
</st> </st>
</nz-tab> </nz-tab>
<nz-tab nzTitle='已回复'> <nz-tab [nzTitle]="'已回复(' + tabs?.receivedQuantity + ')'">
<st <st
#st2 #st2
[data]="service.$api_get_listOperatePage" [data]="service.$api_get_listOperatePage"
[columns]="columns2" [columns]="columns2"
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }" [req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams2 }"
[res]="{ reName: { list: 'data.records', total: 'data.total' } }" [res]="{ reName: { list: 'data.records', total: 'data.total' } }"
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }" [page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
[loading]="false" [loading]="false"

View File

@ -70,18 +70,19 @@ export class WaybillManagementAbnormalAppearComponent implements OnInit {
{ title: '回复人', index: 'replyAppUserName', width: '180px', className: 'text-left' }, { title: '回复人', index: 'replyAppUserName', width: '180px', className: 'text-left' },
{ title: '回复时间', index: 'replyTime', width: '180px', className: 'text-left' } { title: '回复时间', index: 'replyTime', width: '180px', className: 'text-left' }
]; ];
resourceStatus: number | undefined;
get reqParams() { get reqParams() {
return { return {
...this.sf?.value, ...this.sf?.value,
replyStatus: 0 replyStatus: this.resourceStatus || 0
}; };
} }
get reqParams2() { get reqParams2() {
return { return {
...this.sf?.value, ...this.sf?.value,
replyStatus: 1 replyStatus:this.resourceStatus || 1
}; };
} }
@ -214,6 +215,14 @@ export class WaybillManagementAbnormalAppearComponent implements OnInit {
}; };
this.ui = { '*': { spanLabelFixed: 110, grid: { span: 8, gutter: 4 } } }; this.ui = { '*': { spanLabelFixed: 110, grid: { span: 8, gutter: 4 } } };
} }
selectChange(e: number) {
console.log(e);
this.resourceStatus = e ;
setTimeout(() => {
this?.st?.load(1);
this?.st2?.load(1);
}, 0);
}
getGoodsSourceStatistical() { getGoodsSourceStatistical() {
this.tabs = { this.tabs = {
stayQuantity: 0, stayQuantity: 0,

View File

@ -1,7 +1,7 @@
<!-- <!--
* @Author: your name * @Author: your name
* @Date: 2021-12-03 15:31:52 * @Date: 2021-12-03 15:31:52
* @LastEditTime : 2022-04-14 16:38:56 * @LastEditTime : 2022-04-14 20:06:41
* @LastEditors : Shiming * @LastEditors : Shiming
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE * @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath : \\tms-obc-web\\src\\app\\routes\\waybill-management\\components\\bulk-detail\\bulk-detail.component.html * @FilePath : \\tms-obc-web\\src\\app\\routes\\waybill-management\\components\\bulk-detail\\bulk-detail.component.html
@ -138,25 +138,7 @@
</div> </div>
</div> </div>
</nz-card> </nz-card>
<!-- <nz-card [nzTitle]="'运费信息' +'(到货后'+i?.paymentDays+'天内支付运费)'" #distannce3> <!-- <nz-card [nzTitle]="'运费信息' +'(到货后'+i?.paymentDays+'天内支付运费)'" #distannce3>
<div style="margin-bottom: 18px">
<span style="color: #da001b; font-size: 18px"> {{ i?.goodsInfos?.[0]?.freightPrice | currency }}{{ i?.goodsInfos?.[0]?.freightTypeLabel }} </span>{{ i?.goodsInfos?.[0]?.settlementBasisLabel }}{{
i?.goodsInfos?.[0]?.ruleLabel
}}</div
>
<st #st [data]="i?.billExpenseDetailVOList" [columns]="logColumns" [ps]="0" [page]="{ show: false, showSize: false }">
<ng-template st-row="price" let-item let-index="index">
{{ item.price | currency}}
</ng-template>
</st>
<div>
总计:<span style="color: #da001b; font-size: 18px">{{ totalObj?.price | currency }}</span> (运费{{
totalObj?.price - attObj?.price | currency
}},附加运费{{ attObj?.price | currency}},附加费率{{ (attObj?.price / totalObj?.price) * 100 | number: '0.2-2' }}%
</div>
<div>收款人:{{ i?.payee?.name }}/{{ i?.payee?.phone }}/{{ i?.payee?.idNo }}</div>
</nz-card> -->
<nz-card [nzTitle]="'运费信息' +'到货后'+i?.paymentDays+'天内支付运费'" #distannce3>
<h2>{{i?.freightPrice}}{{i?.goodsInfos?.[0]?.freightTypeLabel}}{{ i?.goodsInfos?.[0]?.settlementBasisLabel ? i?.goodsInfos?.[0]?.settlementBasisLabel + '' :' ' }}{{i?.goodsInfos?.[0]?.ruleLabel}}</h2> <h2>{{i?.freightPrice}}{{i?.goodsInfos?.[0]?.freightTypeLabel}}{{ i?.goodsInfos?.[0]?.settlementBasisLabel ? i?.goodsInfos?.[0]?.settlementBasisLabel + '' :' ' }}{{i?.goodsInfos?.[0]?.ruleLabel}}</h2>
<st #st [data]="billExpenses" [columns]="logColumns" [ps]="0" [page]="{ show: false, showSize: false }"> <st #st [data]="billExpenses" [columns]="logColumns" [ps]="0" [page]="{ show: false, showSize: false }">
<ng-template st-row="PriceType" let-item let-index="index"> 到付 </ng-template> <ng-template st-row="PriceType" let-item let-index="index"> 到付 </ng-template>
@ -178,8 +160,38 @@
</div> </div>
<div *ngIf=" i?.payee?.name !== i?.driver?.name">车队长:{{ i?.payee?.name }}{{ i?.payee?.phone ? "/" + <div *ngIf=" i?.payee?.name !== i?.driver?.name">车队长:{{ i?.payee?.name }}{{ i?.payee?.phone ? "/" +
i?.payee?.phone : ''}}/{{ i?.payee?.idNo }}</div> i?.payee?.phone : ''}}/{{ i?.payee?.idNo }}</div>
</nz-card> -->
<!--
结算依据为1时卸货时间不为空显示运费信息否则隐藏
结算依据为2时装货时间不为空显示运费信息否则隐藏
-->
<nz-card [nzTitle]="priceTitel" #distannce3
[hidden]="!(i?.settlementBasis ==='1' && i?.unloadTime) && !(i?.settlementBasis ==='2' && i?.loadTime)">
<ng-template #priceTitel>
<span>运费信息</span><span
style="padding-left: 24px; color: #f59a23;font-size: small;">到货后{{i?.goodsResource.paymentDays}}天内支付运费</span>
</ng-template>
<div style="margin-bottom: 18px">
<span style="color: #da001b; font-size: 18px"> {{ i?.freightPrice }}{{ i?.freightTypeLabel }} </span>{{
i?.settlementBasisLabel }}{{
i?.ruleLabel
}}
</div>
<st #st [data]="billExpenses" [columns]="logColumns" [ps]="0" [page]="{ show: false, showSize: false }">
<ng-template st-row="prices" let-item let-index="index">
{{ item.price + item.surcharge | currency }}
</ng-template>
<ng-template st-row="PriceType" let-item let-index="index"> 到付 </ng-template>
<ng-template st-row="price" let-item let-index="index"> {{item.price | currency}} </ng-template>
<ng-template st-row="surcharge" let-item let-index="index"> {{item.surcharge | currency}} </ng-template>
</st>
<div>
总计:<span style="color: #da001b; font-size: 18px">{{ i?.totalAmount | currency }}</span> (运费{{ i?.totalFreight |
currency }}
附加费{{ i?.totalSurcharge | currency }},附加费率{{ i?.totalRate * 100 | number: '0.2-2' }}%
</div>
<div *ngIf=" i?.payeeId !== i?.driverId" class="mt-xs">车队长:{{ i?.payeeName }}/{{ i?.payeePhone }}</div>
</nz-card> </nz-card>
<nz-card nzTitle="附件信息" #distannce4> <nz-card nzTitle="附件信息" #distannce4>
<sv-container> <sv-container>
<sv label="协议附件"> <sv label="协议附件">

View File

@ -132,7 +132,7 @@ export class ShipperBaseService extends BaseService {
const list = res.map((item: any) => { const list = res.map((item: any) => {
return { return {
label: item.enterpriseName, label: item.enterpriseName,
value: item.id value: item.enterpriseName
}; };
}); });
const obj = []; const obj = [];