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

This commit is contained in:
Taric Xin
2022-01-25 15:59:07 +08:00
27 changed files with 426 additions and 214 deletions

View File

@ -4,7 +4,7 @@
* @Author : Shiming
* @Date : 2022-01-05 11:01:55
* @LastEditors : Shiming
* @LastEditTime : 2022-01-19 10:39:55
* @LastEditTime : 2022-01-25 14:25:49
* @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\components\\contract-template-detail\\contract-template-detail.component.ts
* Copyright (C) 2022 huzhenhong. All rights reserved.
*/
@ -141,7 +141,8 @@ export class ContractManagementTemplateDetailComponent implements OnInit {
save() {
console.log(this.sf.value)
console.log(this.sf2.value)
console.log(this.sf2.value)
console.log(this.detailList.templateName)
console.log(this.title)
if (!this.sf.value.templateName || !this.sf.value.templateType || !this.sf2.value.templateContent || !this.title) {
this.service.msgSrv.error('必填参数为空,请检查再重新保存!');

View File

@ -240,11 +240,11 @@ export class PaymentOrderComponent implements OnInit {
{ title: '付款类型', index: 'payType', width: 130 },
{ title: '付款方式', index: 'payModeLabel', width: 130 },
{ title: '结算客户', index: 'shipperId', width: 160 },
{ title: '收款人', index: 'hrToName', width: 150 },
{ title: '应付已核销', index: 'callNo', width: 150 },
{ title: '收款人', index: 'hrToLabel', width: 150 },
{ title: '应付已核销', index: 'ishrhxLabel', width: 150 },
{ title: '确认日期', index: 'payDate', type: 'date', className: 'text-center', width: 150 },
{ title: '创建时间', index: 'payDate', type: 'date', className: 'text-center', width: 150 },
{ title: '创建人', index: 'createUserId', width: 160 },
{ title: '创建人', index: 'createUserIdLabel', width: 160 },
{ title: '付款备注', index: 'payRemarks', width: 200 },
{
title: '操作',

View File

@ -18,7 +18,7 @@
{{ costInfo?.brmdate }}
</se>
<se label="收款方式" required>
{{ costInfo?.brmmodeLabel }}
{{ costInfo?.brmModeLabel }}
</se>
<se label="银行类型">
{{ costInfo?.banktypeLabel }}
@ -36,18 +36,19 @@
{{ costInfo?.recnopay |currency }}
</se>
<se label="手续费">
{{ costInfo?.ltdid }}
{{ 0 |currency }}
</se>
<se label="到账金额" required>
{{ costInfo?.brmmoney |currency }}
</se>
<se label="核销金额">
{{ costInfo?.brmmoney |currency }}
</se>
<se label="银行水单">
{{ costInfo?.bankreceipt }}
</se>
<se label="预收金额">
{{ costInfo?.yskmoney |currency}}
{{ costInfo?.brmmoney |currency }}
</se>
<se label="收款备注">
{{ costInfo?.remarks }}

View File

@ -1,3 +1,13 @@
/*
* @Description :
* @Version : 1.0
* @Author : Shiming
* @Date : 2022-01-20 10:00:39
* @LastEditors : Shiming
* @LastEditTime : 2022-01-25 15:40:10
* @FilePath : \\tms-obc-web\\src\\app\\routes\\financial-management\\components\\receipt-order\\receipt-order-detail\\receipt-order-detail.component.ts
* Copyright (C) 2022 huzhenhong. All rights reserved.
*/
import { Component, OnInit, ViewChild } from '@angular/core';
import { ActivatedRoute } from '@angular/router';
import { STComponent, STColumn, STRequestOptions } from '@delon/abc/st';
@ -63,7 +73,7 @@ export class ReceiptOrderDetailComponent implements OnInit {
],
requested: [
{ title: '序号', render: 'no', width: 70, className: 'text-left' },
{ title: '结算客户', index: 'cno', className: 'text-left', width: 200 },
{ title: '结算客户', index: 'cnoName', className: 'text-left', width: 200 },
{
title: '预收金额',
index: 'yskmoney',

View File

@ -4,7 +4,7 @@
* @Author : Shiming
* @Date : 2022-01-18 18:43:42
* @LastEditors : Shiming
* @LastEditTime : 2022-01-18 18:58:32
* @LastEditTime : 2022-01-25 15:38:21
* @FilePath : \\tms-obc-web\\src\\app\\routes\\financial-management\\components\\receipt-order\\receipt-order.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved.
-->

View File

@ -236,11 +236,11 @@ export class ReceiptOrderComponent implements OnInit {
},
{
title: '核销金额',
index: 'armoney',
index: 'brmmoney',
width: 200,
type: 'widget',
className: 'text-right',
widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.armoney }) }
widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.brmmoney }) }
},
{
title: '预收金额',
@ -252,11 +252,11 @@ export class ReceiptOrderComponent implements OnInit {
},
{ title: '银行类型', index: 'banktypeLabel', width: 200, className: 'text-left' },
{ title: '收款类型', index: 'brmtypeLabel', width: 150, className: 'text-left' },
{ title: '收款方式', index: 'brmmode', width: 150, className: 'text-left' },
{ title: '收款方式', index: 'brmmodeLabel', width: 150, className: 'text-left' },
{ title: '付款人', index: 'artoname', width: 200, className: 'text-left' },
{ title: '银行水单', index: 'bankreceipt', width: 200, className: 'text-left' },
{ title: '创建时间', index: 'createTime', type: 'date', width: 200, className: 'text-left' },
{ title: '创建人', index: 'createUserId', width: 150, className: 'text-left' },
// { title: '创建人', index: 'createUserName', width: 150, className: 'text-left' },
{ title: '收款状态', index: 'stsLabel', width: 200, className: 'text-left' },
{ title: '收款备注', index: 'remarks', width: 200, className: 'text-left' },
{

View File

@ -238,7 +238,7 @@ export class ReceivableOrderComponent implements OnInit {
return [
{ title: '', index: 'key', type: 'checkbox' },
{ title: '核销单号', index: 'ahxcode', type: 'link', width: 140 },
{ title: '网络货运人', index: 'ltdId', width: 140 },
{ title: '网络货运人', index: 'ltdName', width: 140 },
{ title: '核销日期', index: 'ahxdate', type: 'date', width: 160 },
{ title: '付款账户', index: 'shipperaccount', width: 120 },
{ title: '收款账户', index: 'ltdaccount', width: 120 },

View File

@ -622,8 +622,23 @@ export class OrderManagementBulkComponent implements OnInit {
/**
*查看评价
*/
viewEvaluate(item: any) {
this.isVisibleEvaluate = true;
viewEvaluate(item: any) {
console.log(item)
this.isVisibleEvaluate = true
const params = {
businessCode: item.billCode,
evaluateUserId: item.shipperAppUserId,
}
const params2 = {
businessCode: item.billCode,
passiveUserId: item.shipperAppUserId,
}
this.service.request(this.service.$api_getBillEvaluateByShipper, params).subscribe(res => {
console.log(res)
});
this.service.request(this.service.$api_getBillEvaluateDriverByShipper, params2).subscribe(res => {
console.log(res)
});
}
/**
*变更运费

View File

@ -4,7 +4,7 @@
* @Author : Shiming
* @Date : 2022-01-12 10:52:50
* @LastEditors : Shiming
* @LastEditTime : 2022-01-24 14:33:59
* @LastEditTime : 2022-01-25 14:02:24
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\compliance-audit\\compliance-audit.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved.
-->
@ -108,13 +108,13 @@
<ng-template #extraTemplate>
<div>
<button nz-button nzType="primary" (click)="audit()">
批量签收
批量抽查
</button>
</div>
</ng-template>
<nz-modal [(nzVisible)]="isVisibleRE" [nzWidth]="600" [nzFooter]="nzModalFooterview2" (nzOnOk)="handleOK()" nzTitle="审核" (nzOnCancel)="handleCancel('1')">
<nz-modal [(nzVisible)]="isVisibleRE" [nzWidth]="600" [nzFooter]="nzModalFooterview2" (nzOnOk)="handleOK()" nzTitle="抽查" (nzOnCancel)="handleCancel('1')">
<ng-container *nzModalContent>
<sf #sfView [schema]="schemaView" [ui]="uiView" [compact]="true" [button]="'none'">
</sf>

View File

@ -1,3 +1,4 @@
import { registerLocaleData } from '@angular/common';
import { Router } from '@angular/router';
import { Component, OnInit, ViewChild } from '@angular/core';
import { STColumn, STComponent } from '@delon/abc/st';
@ -448,6 +449,10 @@ export class OrderManagementRiskComponent implements OnInit {
} else {
idList.push(this.sfView.value.billCode)
}
if(!this.sfView.value.representationsCause) {
this.service.msgSrv.error('拒绝原因为空!');
return;
}
const parms = {
ids: idList,
auditRemark: this.sfView.value.representationsCause,
@ -466,12 +471,18 @@ export class OrderManagementRiskComponent implements OnInit {
*审核
*/
audit(item?: any) {
this.isVisibleRE = true;
if (item) {
this.auditId = item.id;
this.initSTAudit(1);
this.isVisibleRE = true;
} else {
if(this.selectedRows.length <= 0) {
this.service.msgSrv.error('请选择订单!')
return;
} else {
this.initSTAudit(2);
this.isVisibleRE = true;
}
}
}
/**

View File

@ -1,19 +1,29 @@
/*
* @Description :
* @Version : 1.0
* @Author : Shiming
* @Date : 2021-12-03 15:31:52
* @LastEditors : Shiming
* @LastEditTime : 2022-01-25 13:28:47
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\vehicle\\vehicle.component.spec.ts
* Copyright (C) 2022 huzhenhong. All rights reserved.
*/
import { waitForAsync, ComponentFixture, TestBed } from '@angular/core/testing';
import { SupplyManagementVehicleComponent } from './vehicle.component';
import { OrderManagementVehicleComponent } from './vehicle.component';
describe('SupplyManagementVehicleComponent', () => {
let component: SupplyManagementVehicleComponent;
let fixture: ComponentFixture<SupplyManagementVehicleComponent>;
describe('OrderManagementVehicleComponent', () => {
let component: OrderManagementVehicleComponent;
let fixture: ComponentFixture<OrderManagementVehicleComponent>;
beforeEach(waitForAsync(() => {
TestBed.configureTestingModule({
declarations: [ SupplyManagementVehicleComponent ]
declarations: [ OrderManagementVehicleComponent ]
})
.compileComponents();
}));
beforeEach(() => {
fixture = TestBed.createComponent(SupplyManagementVehicleComponent);
fixture = TestBed.createComponent(OrderManagementVehicleComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});

View File

@ -588,6 +588,20 @@ resourceStatus: any;
viewEvaluate(item: any) {
console.log(item)
this.isVisibleEvaluate = true
const params = {
businessCode: item.billCode,
evaluateUserId: item.shipperAppUserId,
}
const params2 = {
businessCode: item.billCode,
passiveUserId: item.shipperAppUserId,
}
this.service.request(this.service.$api_getBillEvaluateByShipper, params).subscribe(res => {
console.log(res)
});
this.service.request(this.service.$api_getBillEvaluateDriverByShipper, params2).subscribe(res => {
console.log(res)
});
}
/**
*变更运费

View File

@ -213,7 +213,7 @@ export class orderManagementVoucherViewComponent implements OnInit {
} as SFUploadWidgetSchema,
}
},
required: ['time']
required: ['loadingLadingBillFilePath', 'loadingPeopleVehiclesGoodsFilePath','unloadingLadingBillFilePath','unloadingPeopleVehiclesGoodsFilePath' ]
};
}else {
this.schema = {
@ -383,7 +383,6 @@ export class orderManagementVoucherViewComponent implements OnInit {
} as SFUploadWidgetSchema,
}
},
required: ['time', 'weight' ]
};
}
this.ui = {
@ -398,17 +397,17 @@ export class orderManagementVoucherViewComponent implements OnInit {
};
}
save(value: any): void {
if(!value) {
if(!this.sf.valid) {
this.service.msgSrv.warning('必填项为空!')
return;
}
console.log(value)
const params = {
id: this.i.id,
loadingLadingBillFilePath: value.loadingLadingBillFilePath.data.fullFilePath,
loadingPeopleVehiclesGoodsFilePath: value.loadingPeopleVehiclesGoodsFilePath.data.fullFilePath,
unloadingLadingBillFilePath: value.unloadingLadingBillFilePath.data.fullFilePath,
unloadingPeopleVehiclesGoodsFilePath: value.unloadingPeopleVehiclesGoodsFilePath.data.fullFilePath,
id: this.i?.id,
loadingLadingBillFilePath: value?.loadingLadingBillFilePath?.data?.fullFilePath,
loadingPeopleVehiclesGoodsFilePath: value?.loadingPeopleVehiclesGoodsFilePath?.data?.fullFilePath,
unloadingLadingBillFilePath: value?.unloadingLadingBillFilePath?.data?.fullFilePath,
unloadingPeopleVehiclesGoodsFilePath: value?.unloadingPeopleVehiclesGoodsFilePath?.data?.fullFilePath,
}
console.log(params)
this.service.request(this.service.$api_get_updateBillExamine, params).subscribe((res) => {

View File

@ -4,7 +4,7 @@
* @Author : Shiming
* @Date : 2021-12-29 16:48:16
* @LastEditors : Shiming
* @LastEditTime : 2022-01-18 17:22:24
* @LastEditTime : 2022-01-24 20:18:38
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\modal\\vehicle\\freight-people\\freight-people.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved.
-->
@ -12,5 +12,5 @@
<sf style="margin-top: 15px" #sf mode="edit" [schema]="schema" [ui]="ui" button="none"></sf>
<div class="modal-footer">
<button nz-button type="button" (click)="close()">关闭</button>
<button nz-button type="submit" nzType="primary" (click)="save(sf?.value)" [disabled]="sf?.valid">确定</button>
<button nz-button type="submit" nzType="primary" (click)="save(sf?.value)" >确定</button>
</div>

View File

@ -4,7 +4,7 @@
* @Author : Shiming
* @Date : 2021-12-29 16:48:16
* @LastEditors : Shiming
* @LastEditTime : 2022-01-18 17:22:37
* @LastEditTime : 2022-01-24 20:19:31
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\modal\\vehicle\\freight-people\\freight-people.component.ts
* Copyright (C) 2022 huzhenhong. All rights reserved.
*/
@ -57,7 +57,7 @@ export class VehicleFreightPeopleComponent implements OnInit {
}
}
},
required: ['enterpriseInfoName']
required: ['enterpriseInfoId']
};
this.ui = {
'*': {
@ -69,9 +69,13 @@ export class VehicleFreightPeopleComponent implements OnInit {
save(value: any): void {
console.log(this.sf.value);
if(!this.sf.valid) {
this.service.msgSrv.error("请选择网络货运人!")
return;
}
const params = {
billIds: this.data?.ids,
enterpriseInfoId: this.sf.value?.enterpriseInfoName
enterpriseInfoId: this.sf.value?.enterpriseInfoId
};
console.log(params);
this.service.request(this.service.$api_set_updateEnterpriseInfoBatch, params).subscribe((res: any) => {

View File

@ -4,7 +4,7 @@
* @Author : Shiming
* @Date : 2021-12-03 15:31:52
* @LastEditors : Shiming
* @LastEditTime : 2022-01-24 16:39:11
* @LastEditTime : 2022-01-25 15:26:23
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\services\\order-management.service.ts
* Copyright (C) 2022 huzhenhong. All rights reserved.
*/
@ -144,6 +144,14 @@ export class OrderManagementService extends ShipperBaseService {
// 获取规则抽查分类统计
public $api_get_getComplianceStatisticalStatus = '/api/sdc/billOperate/getComplianceStatisticalStatus';
// 货主端-货主查看评价(评价司机的)
public $api_getBillEvaluateByShipper = '/api/sdc/billEvaluate/getBillEvaluateByShipper';
// 货主端-货主查看评价(司机评价货主的)
public $api_getBillEvaluateDriverByShipper = '/api/sdc/billEvaluate/getBillEvaluateDriverByShipper';
getDictByKey(dictKey: string) {
const params = { dictKey: dictKey };
return this.request(this.$api_getDictValue, params);

View File

@ -216,6 +216,11 @@
<nz-card>
<div class="card-title">服务信息</div>
<div nz-row>
<div nz-col nzSpan="12">
<sf #sf55 [schema]="schema55" [button]="'none'" [ui]="ui55" [formData]="sf55data"></sf>
</div>
</div>
<div nz-row [nzGutter]="24" style="margin: 24px 0">
<div nz-col [nzSpan]="10">
<div class="align-center">

View File

@ -2,6 +2,7 @@ import { Component, OnInit, ViewChild } from '@angular/core';
import { FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';
import { ActivatedRoute, Router } from '@angular/router';
import {
SFCheckboxWidgetSchema,
SFComponent,
SFNumberWidgetSchema,
SFSchema,
@ -31,6 +32,7 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
sf3data: any; // 货源单设置回显
sf4data: any; // 货源单设置回显
sf5data: any; // 货源单设置回显
sf55data: any; // 货源单设置回显
sf6data: any; // 货源单设置回显
sf7data: any; // 货源单设置回显
creatTime: any; // 货源单设置回显
@ -87,6 +89,10 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
schema5: SFSchema = {};
ui5!: SFUISchema;
@ViewChild('sf55', { static: false }) sf55!: SFComponent;
schema55: SFSchema = {};
ui55!: SFUISchema;
@ViewChild('sf6', { static: false }) sf6!: SFComponent;
schema6: SFSchema = {};
ui6!: SFUISchema;
@ -105,6 +111,7 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
this.initSF3();
this.initSF4();
this.initSF5();
this.initSF55();
this.initSF6();
this.initSF7();
this.initdata();
@ -356,7 +363,56 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
}
};
}
initSF55() {
this.schema55 = {
properties: {
insuranceType: {
type: 'string',
title: '增值服务套餐',
enum: [
{ label: '不购买', value: '0' },
{ label: '套餐一', value: '1' },
{ label: '套餐二', value: '2' }
],
ui: {
widget: 'select'
},
default:'0'
},
type1: {
type: 'string',
title: '',
enum: ['车辆实时定位', '轨迹查询', '数据保护','赠送基本险'],
readOnly: true,
ui: {
widget: 'checkbox',
visibleIf: {insuranceType: (value: string) => value ==='1'},
} as SFCheckboxWidgetSchema,
default: ['车辆实时定位', '轨迹查询', '数据保护','赠送基本险'],
},
type2: {
type: 'string',
title: '',
enum: ['车辆实时定位', '轨迹查询', '数据保护','专属技术服务','赠送综合险'],
readOnly: true,
ui: {
widget: 'checkbox',
visibleIf: {insuranceType: (value: string) => value ==='2'},
} as SFCheckboxWidgetSchema,
default: ['车辆实时定位', '轨迹查询', '数据保护','专属技术服务','赠送综合险'],
}
}
};
this.ui55 = {
'*': {
spanLabelFixed: 100,
grid: { span: 24 }
},
$insuranceType: {
grid: { span: 12 }
}
};
}
initSF5() {
this.schema5 = {
properties: {
@ -810,6 +866,7 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
loadingTime: this.validateForm1?.value?.loadingTime,
unloadingTime: this.validateForm1?.value?.unloadingTime,
unLoadingPlaceDTOList: [...this.startInfo, ...this.endInfo],
insuranceType:this.sf55.value.insuranceType,
goodsInfoDTOList: [
{
...this.sf4.value,
@ -836,6 +893,7 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
this.requests(this.service.$api_set_saveAnotherWholeOrder, params, 2);
}
}
// 补0函数
addPreZero(num: any) {
if (num < 10) {
return '0' + num;
@ -1040,13 +1098,9 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
this.sf5data = {
goodsValue: res?.goodsValue
};
console.log(res?.stateReceipt);
// this.sf6data = {
// stateReceipt: res?.stateReceipt,
// receiptType: res?.receiptType,
// receiptUserId: res?.receiptUserId,
// remarks: res?.remarks
// };
this.sf55data = {
insuranceType: res?.insuranceType || ''
};
this.sf6data = {
stateReceipt: res?.stateReceipt,
receiptType: res?.receiptType || '',

View File

@ -223,6 +223,11 @@
<nz-card>
<div class="card-title">服务信息</div>
<div nz-row>
<div nz-col nzSpan="12">
<sf #sf55 [schema]="schema55" [button]="'none'" [ui]="ui55" [formData]="sf55data"></sf>
</div>
</div>
<div nz-row [nzGutter]="24" style="margin: 24px 0">
<div nz-col [nzSpan]="10">
<div class="align-center">

View File

@ -3,6 +3,7 @@ import { FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms'
import { ActivatedRoute, Router } from '@angular/router';
import { cacheConf } from '@conf/cache.conf';
import {
SFCheckboxWidgetSchema,
SFComponent,
SFNumberWidgetSchema,
SFSchema,
@ -37,6 +38,7 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
sf3data: any; // 货源单设置回显
sf4data: any; // 货源单设置回显
sf5data: any; // 货源单设置回显
sf55data: any; // 货源单设置回显
sf6data: any; // 货源单设置回显
sf7data: any; // 货源单设置回显
id = '';
@ -86,6 +88,10 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
@ViewChild('sf5', { static: false }) sf5!: SFComponent;
schema5: SFSchema = {};
ui5!: SFUISchema;
@ViewChild('sf55', { static: false }) sf55!: SFComponent;
schema55: SFSchema = {};
ui55!: SFUISchema;
@ViewChild('sf6', { static: false }) sf6!: SFComponent;
schema6: SFSchema = {};
@ -100,6 +106,7 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
this.initSF3();
this.initSF4();
this.initSF5();
this.initSF55();
this.initSF6();
this.initSF7();
this.addStartInfo();
@ -400,6 +407,56 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
}
};
}
initSF55() {
this.schema55 = {
properties: {
insuranceType: {
type: 'string',
title: '增值服务套餐',
enum: [
{ label: '不购买', value: '0' },
{ label: '套餐一', value: '1' },
{ label: '套餐二', value: '2' }
],
ui: {
widget: 'select'
},
default:'0'
},
type1: {
type: 'string',
title: '',
enum: ['车辆实时定位', '轨迹查询', '数据保护','赠送基本险'],
readOnly: true,
ui: {
widget: 'checkbox',
visibleIf: {insuranceType: (value: string) => value ==='1'},
} as SFCheckboxWidgetSchema,
default: ['车辆实时定位', '轨迹查询', '数据保护','赠送基本险'],
},
type2: {
type: 'string',
title: '',
enum: ['车辆实时定位', '轨迹查询', '数据保护','专属技术服务','赠送综合险'],
readOnly: true,
ui: {
widget: 'checkbox',
visibleIf: {insuranceType: (value: string) => value ==='2'},
} as SFCheckboxWidgetSchema,
default: ['车辆实时定位', '轨迹查询', '数据保护','专属技术服务','赠送综合险'],
}
}
};
this.ui55 = {
'*': {
spanLabelFixed: 100,
grid: { span: 24 }
},
$insuranceType: {
grid: { span: 12 }
}
};
}
initSF6() {
this.schema6 = {
properties: {
@ -755,7 +812,8 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
...this.sf5.value,
...this.sf6.value,
expenseDTOList: expenseList,
paymentDays: this.sf7.value.paymentDays
paymentDays: this.sf7.value.paymentDays,
insuranceType:this.sf55.value.insuranceType,
};
let reqUrl = this.service.$api_consignWhole;

View File

@ -279,7 +279,7 @@ export class CancellationInvoiceComponent implements OnInit {
},
{ title: '申请时间', index: 'createTime', type: 'date', width: 150 },
{ title: '网络货运人', index: 'ltdName', width: 120 },
{ title: '购买人', index: 'artoName', width: 90 },
{ title: '购买人', index: 'artoname', width: 90 },
{ title: '订单数', index: 'ordlines', width: 90, className: 'text-right' },
{
title: '价税合计',

View File

@ -1,154 +1,179 @@
<page-header-wrapper [title]="'开票信息'" [logo]="logo">
<ng-template #logo>
<button nz-button nz-tooltip nzTooltipTitle="返回上一页" (click)="goBack()">
<i nz-icon nzType="left" nzTheme="outline"></i>
</button>
</ng-template>
<ng-template #logo>
<button nz-button nz-tooltip nzTooltipTitle="返回上一页" (click)="goBack()">
<i nz-icon nzType="left" nzTheme="outline"></i>
</button>
</ng-template>
</page-header-wrapper>
<nz-card class="statistics-box">
<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="申请编号">
{{headerInfo?.vatappHCode}}
</se>
<se label="发票号码">
{{headerInfo?.invoiceno}}
</se>
<se label="发票代码">
{{headerInfo?.invoiceno2}}
</se>
<se label="开票日期">
{{headerInfo?.invoicedate}}
</se>
<se label="价税合计">
{{headerInfo?.vatmoney}}
</se>
<se label="税额">
{{headerInfo?.vattax}}
</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="纳税号">
{{headerInfo?.artotaxno}}
</se>
<se label="地址">
{{headerInfo?.artoadd}}
</se>
<se label="电话">
{{headerInfo?.artotel}}
</se>
<se label="开户行">
{{headerInfo?.artobank}}
</se>
<se label="银行账户">
{{headerInfo?.artoacc}}
</se>
<se label="票面备注">
{{headerInfo?.remarks}}
</se>
<!-- <se label="其他要求">
<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?.ltdName }}
</se>
<se label="申请编号">
{{ headerInfo?.vatappHCode }}
</se>
<se label="发票号码">
{{ headerInfo?.invoiceno }}
</se>
<se label="发票代码">
{{ headerInfo?.invoiceno2 }}
</se>
<se label="开票日期">
{{ headerInfo?.invoicedate }}
</se>
<se label="价税合计">
{{ headerInfo?.vatmoney }}
</se>
<se label="税额">
{{ headerInfo?.vattax }}
</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="纳税号">
{{ headerInfo?.artotaxno }}
</se>
<se label="地址">
{{ headerInfo?.artoadd }}
</se>
<se label="电话">
{{ headerInfo?.artotel }}
</se>
<se label="开户行">
{{ headerInfo?.artobank }}
</se>
<se label="银行账户">
{{ headerInfo?.artoacc }}
</se>
<se label="票面备注">
{{ headerInfo?.remarks }}
</se>
<!-- <se label="其他要求">
{{headerInfo?.otherremarks}}
</se> -->
</div>
<div *ngIf="isCanEdit" nz-col [nzXl]="8" [nzLg]="8" [nzSm]="8" [nzXs]="8" class="text-right">
<ng-container *ngIf="isEdit; else elseTemplate">
<button nz-button (click)="isEdit = false;invoiceST?.load(1)">取消</button>
<button nz-button nzType="primary" (click)="saveInvoices()">保 存</button>
</ng-container>
<ng-template #elseTemplate>
<!-- <button nz-button nzType="primary" (click)="isEdit = true">修改</button> -->
</ng-template>
</div>
</div>
<div *ngIf="isCanEdit" nz-col [nzXl]="8" [nzLg]="8" [nzSm]="8" [nzXs]="8" class="text-right">
<ng-container *ngIf="isEdit; else elseTemplate">
<button nz-button (click)="isEdit = false; invoiceST?.load(1)">取消</button>
<button nz-button nzType="primary" (click)="saveInvoices()">保 存</button>
</ng-container>
<ng-template #elseTemplate>
<!-- <button nz-button nzType="primary" (click)="isEdit = true">修改</button> -->
</ng-template>
</div>
</div>
</nz-card>
<nz-card class="search-box" nzBordered>
<nz-tabset>
<nz-tab nzTitle="订单明细">
<div nz-row nzGutter="8" class="mb-md">
<div nz-col [nzXl]="18" [nzLg]="24" [nzSm]="24" [nzXs]="24">
<sf
#orderSf
[schema]="orderSchema"
[ui]="{ '*': { spanLabelFixed: 90, grid: { lg: 8, md: 12, sm: 12, xs: 24 } } }"
[compact]="true"
[button]="'none'"
></sf>
</div>
<div nz-col [nzXl]="6" [nzLg]="24" [nzSm]="24" [nzXs]="24" class="text-right">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="orderST?.load(1)">查询</button>
<button nz-button (click)="resetSF(1)">重置</button>
<!-- <button nz-button> 导出</button> -->
</div>
</div>
<nz-tabset>
<nz-tab nzTitle="订单明细">
<div nz-row nzGutter="8" class="mb-md">
<div nz-col [nzXl]="18" [nzLg]="24" [nzSm]="24" [nzXs]="24">
<sf #orderSf [schema]="orderSchema"
[ui]="{ '*': { spanLabelFixed: 90,grid: { lg: 8, md: 12, sm: 12, xs: 24 } }}" [compact]="true"
[button]="'none'"></sf>
</div>
<div nz-col [nzXl]=" 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" class="text-right">
<button nz-button nzType="primary" [nzLoading]="service.http.loading"
(click)="orderST?.load(1)">查询</button>
<button nz-button (click)="resetSF(1)">重置</button>
<!-- <button nz-button> 导出</button> -->
</div>
</div>
<st
#orderST
[scroll]="{ x: '1200px' }"
[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] }"
[loading]="service.http.loading"
[scroll]="{ x: '1200px', y: '250px' }"
></st>
</nz-tab>
<nz-tab nzTitle="费用明细">
<div nz-row nzGutter="8" class="mb-md">
<div nz-col [nzXl]="18" [nzLg]="24" [nzSm]="24" [nzXs]="24">
<sf
#costSf
[schema]="costSchema"
[ui]="{ '*': { spanLabelFixed: 90, grid: { lg: 8, md: 12, sm: 12, xs: 24 } } }"
[compact]="true"
[button]="'none'"
></sf>
</div>
<div nz-col [nzXl]="6" [nzLg]="24" [nzSm]="24" [nzXs]="24" class="text-right">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="costST?.load(1)">查询</button>
<button nz-button (click)="resetSF(2)">重置</button>
<button nz-button> 导出</button>
</div>
</div>
<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] }"
[loading]="service.http.loading" [scroll]="{ x:'1200px',y: '250px' }"></st>
</nz-tab>
<nz-tab nzTitle="费用明细">
<div nz-row nzGutter="8" class="mb-md">
<div nz-col [nzXl]="18" [nzLg]="24" [nzSm]="24" [nzXs]="24">
<sf #costSf [schema]="costSchema"
[ui]="{ '*': { spanLabelFixed: 90,grid: { lg: 8, md: 12, sm: 12, xs: 24 } }}" [compact]="true"
[button]="'none'"></sf>
</div>
<div nz-col [nzXl]=" 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" class="text-right">
<button nz-button nzType="primary" [nzLoading]="service.http.loading"
(click)="costST?.load(1)">查询</button>
<button nz-button (click)="resetSF(2)">重置</button>
<button nz-button> 导出</button>
</div>
</div>
<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.$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="vatname" let-item let-index="index">
<nz-select *ngIf="isEdit" [ngModel]="item.owner"
(ngModelChange)="invoiceST.setRow(index, { vatname: $event })" style="width: 100%;">
</nz-select>
<ng-container *ngIf="!isEdit">{{ item.vatname }}</ng-container>
</ng-template>
<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="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="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>
<nz-tab nzTitle="快递轨迹">
<p style="font-weight: 600;">顺丰快递: {{routesInfo?.mailNo}} <nz-tag [nzColor]="'#2db7f5'" class="ml-md">已签收</nz-tag>
</p>
<app-logistics-time-line [data]="routesInfo?.routes"></app-logistics-time-line>
</nz-tab>
</nz-tabset>
</nz-card>
<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.$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="vatname" let-item let-index="index">
<nz-select
*ngIf="isEdit"
[ngModel]="item.owner"
(ngModelChange)="invoiceST.setRow(index, { vatname: $event })"
style="width: 100%"
>
</nz-select>
<ng-container *ngIf="!isEdit">{{ item.vatname }}</ng-container>
</ng-template>
<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="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="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>
<nz-tab nzTitle="快递轨迹">
<p style="font-weight: 600">顺丰快递: {{ routesInfo?.mailNo }} <nz-tag [nzColor]="'#2db7f5'" class="ml-md">已签收</nz-tag> </p>
<app-logistics-time-line [data]="routesInfo?.routes"></app-logistics-time-line>
</nz-tab>
</nz-tabset>
</nz-card>

View File

@ -108,7 +108,7 @@ export class InvoiceDetailComponent implements OnInit {
private initOrderSF(): SFSchema {
return {
properties: {
billHId: {
billHCode: {
type: 'string',
title: '订单号',
ui: {
@ -146,14 +146,14 @@ export class InvoiceDetailComponent implements OnInit {
private initOrderST(): STColumn[] {
return [
{ title: '订单号', index: 'billHId', width: 140 },
{ title: '订单号', index: 'billHCode', width: 180 },
{ title: '订单完成日期', index: 'billTime', type: 'date', width: 150 },
{ title: '所属项目', index: 'projectId', width: 140 },
{ title: '订单类型', index: 'billType', width: 120 },
{ title: '所属项目', index: 'projectId', width: 180 },
{ title: '订单类型', index: 'billTypeLabel', width: 120 },
{ title: '装货地', index: 'loadingfrom', width: 200 },
{ title: '卸货地', index: 'loadingto', width: 200 },
{ title: '卸货地', index: 'loadingto', width: 220 },
{ title: '货物信息', index: 'goodsinfo', width: 140 },
{ title: '承运司机', index: 'driverinfo', width: 140 },
{ title: '承运司机', index: 'driverinfo', width: 280 },
{
title: '申请金额',
index: 'billkpnotax',

View File

@ -1,10 +1,10 @@
/*
* @Author: your name
* @Date: 2021-12-23 16:50:17
* @LastEditTime: 2021-12-31 13:35:22
* @LastEditors: Please set LastEditors
* @LastEditTime : 2022-01-25 15:53:13
* @LastEditors : Shiming
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: \tms-obc-web\src\app\routes\ticket-management\components\invoice-requested\requested-invoice-modal\requested-invoice-modal.component.ts
* @FilePath : \\tms-obc-web\\src\\app\\routes\\ticket-management\\components\\invoice-requested\\requested-invoice-modal\\requested-invoice-modal.component.ts
*/
import { Component, OnInit, ViewChild } from '@angular/core';
import { STChange, STColumn, STComponent, STRequestOptions } from '@delon/abc/st';
@ -66,12 +66,12 @@ export class RequestedInvoiceModalComponent implements OnInit {
{ title: '', index: 'key', type: 'checkbox' },
{ title: '订单号', index: 'billHCode', width: 150 },
{ title: '订单完成日期', index: 'billTime', type: 'date', width: 150 },
{ title: '所属项目', index: 'projectIdName', width: 160 },
{ title: '所属项目', index: 'projectIdName', width: 250 },
{ title: '订单类型', index: 'billTypeName', width: 90 },
{ title: '装货地', index: 'loadingfrom', width: 250 },
{ title: '卸货地', index: 'loadingto', width: 250 },
{ title: '货物信息', index: 'goodsinfo', width: 170 },
{ title: '承运司机', index: 'driverinfo', width: 170 },
{ title: '承运司机', index: 'driverinfo', width: 280 },
{
title: '总费用',
index: 'billkpmoney',

View File

@ -312,10 +312,6 @@ tabs = {
width: '110px',
className: 'text-left',
buttons: [
{
text: '查看评价',
click: (_record) => this.viewEvaluate(_record),
},
{
text: '确认发车',
click: (_record) => this.sureDepart(_record),

View File

@ -313,10 +313,6 @@ export class WaybillManagementVehicleComponent implements OnInit {
width: '110px',
className: 'text-left',
buttons: [
{
text: '查看评价',
click: _record => this.viewEvaluate(_record)
},
{
text: '确认发车',
click: _record => this.sureDepart(_record),