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

This commit is contained in:
wangshiming
2022-04-20 10:00:21 +08:00
13 changed files with 844 additions and 617 deletions

View File

@ -1,6 +1,6 @@
{
"name": "tms-obc-web",
"version": "0.0.0",
"version": "1.0.0",
"description": "运营后台-WEB",
"author": "cipchk <cipchk@qq.com>",
"repository": {

View File

@ -8,9 +8,9 @@
</div>
<div nz-col [nzSpan]="_$expand ? 24 : 6" [class.text-right]="_$expand">
<button nz-button nzType="primary" [disabled]="!sf.valid" [nzLoading]="isLoading && st.loading" (click)="search()"
acl [acl-ability]="['RiskOrder-Search']">查询</button>
acl [acl-ability]="['FUND-REPORTING-search']">查询</button>
<button nz-button (click)="resetSF()">重置</button>
<button nz-button (click)="export()">导出</button>
<button nz-button (click)="export()" acl [acl-ability]="['FUND-REPORTING-export']">导出</button>
<button nz-button nzType="link" (click)="expandToggle()">
{{ !_$expand ? '展开' : '收起' }}
<i nz-icon [nzType]="!_$expand ? 'down' : 'up'"></i>
@ -33,7 +33,8 @@
<span [ngClass]="{'text-red-dark':item?.uploadStatus === '4'}">{{item?.uploadStatusLabel}}</span>
</ng-template>
<ng-template st-row="verifyStatus" let-item>
<a (click)="viewResult(item)" *ngIf="item?.verifyStatus === '2'">{{item?.verifyStatusLabel}}</a>
<a (click)="viewResult(item)" acl [acl-ability]="['FUND-REPORTING-view-verify-data']"
*ngIf="item?.verifyStatus === '2'">{{item?.verifyStatusLabel}}</a>
<span *ngIf="item?.verifyStatus !== '2'">{{item?.verifyStatusLabel}}</span>
</ng-template>
<ng-template st-row="orderCode" let-item>
@ -56,8 +57,9 @@
已选择
<strong class="text-red">{{ selectedRows.length }}</strong> 条数据
</div>
<button nz-button nzType="primary" (click)="upload()">上传</button>
<button nz-button nzType="primary" (click)="recall()">撤回</button>
<button nz-button nzType="primary" (click)="updateData()">更新数据</button>
<button nz-button nzType="primary" (click)="upload()" acl [acl-ability]="['FUND-REPORTING-upload']">上传</button>
<button nz-button nzType="primary" (click)="recall()" acl [acl-ability]="['FUND-REPORTING-recall']">撤回</button>
<button nz-button nzType="primary" (click)="updateData()" acl
[acl-ability]="['FUND-REPORTING-upload-data']">更新数据</button>
</div>
</ng-template>

View File

@ -9,9 +9,9 @@
</div>
<div [class.text-right]="true">
<button nz-button nzType="primary" [disabled]="!sf.valid" [nzLoading]="isLoading && st.loading" (click)="search()"
acl [acl-ability]="['RiskOrder-Search']">查询</button>
acl [acl-ability]="['ORDER-REPORTING-search']">查询</button>
<button nz-button (click)="resetSF()">重置</button>
<button nz-button (click)="export()">导出</button>
<button nz-button (click)="export()" acl [acl-ability]="['ORDER-REPORTING-export']">导出</button>
<button nz-button nzType="link" (click)="expandToggle()">
{{ !_$expand ? '展开' : '收起' }}
<i nz-icon [nzType]="!_$expand ? 'down' : 'up'"></i>
@ -45,7 +45,8 @@
</ng-template>
<ng-template st-row="checkStatus" let-item let-index="index">
<a *ngIf="item?.checkStatus === '2'" (click)="viewResult(item)">{{filterCheckStatus(item?.checkStatus)}}</a>
<a *ngIf="item?.checkStatus === '2'" acl [acl-ability]="['ORDER-REPORTING-view-upload-data']"
(click)="viewResult(item)">{{filterCheckStatus(item?.checkStatus)}}</a>
<span *ngIf="item?.checkStatus !== '2'">{{filterCheckStatus(item?.checkStatus)}}</span>
</ng-template>
@ -79,9 +80,11 @@
已选择
<strong class="text-red">{{ selectedRows.length }}</strong> 条数据
</div>
<button nz-button nzType="primary" (click)="upload()">上传</button>
<button nz-button nzType="primary" (click)="recall()">撤回</button>
<button nz-button nzType="primary" (click)="updateData()">更新数据</button>
<button nz-button nzType="primary" (click)="uploadSetting()">上传设置</button>
<button nz-button nzType="primary" (click)="upload()" acl [acl-ability]="['ORDER-REPORTING-upload']">上传</button>
<button nz-button nzType="primary" (click)="recall()" acl [acl-ability]="['ORDER-REPORTING-recall']">撤回</button>
<button nz-button nzType="primary" (click)="updateData()" acl
[acl-ability]="['ORDER-REPORTING-update-data']">更新数据</button>
<button nz-button nzType="primary" (click)="uploadSetting()" acl
[acl-ability]="['ORDER-REPORTING-search']">上传设置</button>
</div>
</ng-template>

View File

@ -3,6 +3,6 @@
<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"
[nzLoading]="service.http.loading">修改</button>
[nzLoading]="service.http.loading" acl [acl-ability]="['ORDER-REPORTING-upload-setting-edit']">修改</button>
</div>
</sf>

View File

@ -56,7 +56,7 @@ export class OrderManagementBulkDetailChangeComponent implements OnInit {
listImagUrls: any[] = []; // 货源单设置回显
dirvingMessage = [];
modalcontent: any;
modalTitle:string = '';
modalTitle: string = '';
imges: any;
totalObj: any;
attObj: any;
@ -135,7 +135,7 @@ export class OrderManagementBulkDetailChangeComponent implements OnInit {
// readOnly: this.i.billStatus !== '4' || this.i.billStatus !== '3',
ui: {
widget: 'upload',
action: apiConf.fileUpload,
action: apiConf.waterFileUpload,
fileType: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
@ -143,7 +143,14 @@ export class OrderManagementBulkDetailChangeComponent implements OnInit {
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '提货单',
data: {
appId: this.envSrv.env.appId
appId: this.envSrv.env.appId,
content: [
`上传用户:${this.i?.driverName}(${this.i?.driverTelephone})`,
`上传位置:${this.i?.loadingAddressArr[0]}`,
`上传时间:${format(new Date(), 'yyyy-MM-dd HH:mm:ss')}`,
],
position: '2',
fontSize: '100'
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
@ -174,7 +181,7 @@ export class OrderManagementBulkDetailChangeComponent implements OnInit {
// readOnly: this.i.billStatus !== '4' || this.i.billStatus !== '3',
ui: {
widget: 'upload',
action: apiConf.fileUpload,
action: apiConf.waterFileUpload,
fileType: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
@ -182,7 +189,14 @@ export class OrderManagementBulkDetailChangeComponent implements OnInit {
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '人车货照片',
data: {
appId: this.envSrv.env.appId
appId: this.envSrv.env.appId,
content: [
`上传用户:${this.i?.driverName}(${this.i?.driverTelephone})`,
`上传位置:${this.i?.loadingAddressArr[0]}`,
`上传时间:${format(new Date(), 'yyyy-MM-dd HH:mm:ss')}`,
],
position: '2',
fontSize: '100'
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
@ -221,7 +235,7 @@ export class OrderManagementBulkDetailChangeComponent implements OnInit {
// readOnly: this.i.billStatus !== '4' || this.i.billStatus !== '3',
ui: {
widget: 'upload',
action: apiConf.fileUpload,
action: apiConf.waterFileUpload,
fileType: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
@ -229,7 +243,14 @@ export class OrderManagementBulkDetailChangeComponent implements OnInit {
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '提货单',
data: {
appId: this.envSrv.env.appId
appId: this.envSrv.env.appId,
content: [
`上传用户:${this.i?.driverName}(${this.i?.driverTelephone})`,
`上传位置:${this.i?.unloadingAddressArr[0]}`,
`上传时间:${format(new Date(), 'yyyy-MM-dd HH:mm:ss')}`,
],
position: '2',
fontSize: '100'
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
@ -260,7 +281,7 @@ export class OrderManagementBulkDetailChangeComponent implements OnInit {
// readOnly: this.i.billStatus !== '4' || this.i.billStatus !== '3',
ui: {
widget: 'upload',
action: apiConf.fileUpload,
action: apiConf.waterFileUpload,
fileType: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
@ -268,7 +289,14 @@ export class OrderManagementBulkDetailChangeComponent implements OnInit {
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '人车货照片',
data: {
appId: this.envSrv.env.appId
appId: this.envSrv.env.appId,
content: [
`上传用户:${this.i?.driverName}(${this.i?.driverTelephone})`,
`上传位置:${this.i?.unloadingAddressArr[0]}`,
`上传时间:${format(new Date(), 'yyyy-MM-dd HH:mm:ss')}`,
],
position: '2',
fontSize: '100'
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
@ -589,44 +617,44 @@ export class OrderManagementBulkDetailChangeComponent implements OnInit {
nzContent: AmapPoiPickerComponent,
nzWidth: 900,
nzOnOk: item => {
if(item?.poi) {
const poi = item.poi;
const locList = poi.pois;
switch (type) {
case 'start':
this.startInfo[index].detailedAddress = poi.formattedAddress;
this.startInfo[index].longitude = locList[0];
this.startInfo[index].latitude = locList[1];
this.startInfo[index].province = poi.addressComponent.province;
this.startInfo[index].city = poi.addressComponent.city;
this.startInfo[index].area = poi.addressComponent.district;
this.startInfo[index].address = poi.formattedAddress;
break;
case 'end':
this.endInfo[index].detailedAddress = poi.formattedAddress;
this.endInfo[index].longitude = locList[0];
this.endInfo[index].latitude = locList[1];
this.endInfo[index].province = poi.addressComponent.province;
this.endInfo[index].city = poi.addressComponent.city;
this.endInfo[index].area = poi.addressComponent.district;
this.endInfo[index].address = poi.formattedAddress;
break;
default:
break;
}
if (item?.poi) {
const poi = item.poi;
const locList = poi.pois;
switch (type) {
case 'start':
this.startInfo[index].detailedAddress = poi.formattedAddress;
this.startInfo[index].longitude = locList[0];
this.startInfo[index].latitude = locList[1];
this.startInfo[index].province = poi.addressComponent.province;
this.startInfo[index].city = poi.addressComponent.city;
this.startInfo[index].area = poi.addressComponent.district;
this.startInfo[index].address = poi.formattedAddress;
break;
case 'end':
this.endInfo[index].detailedAddress = poi.formattedAddress;
this.endInfo[index].longitude = locList[0];
this.endInfo[index].latitude = locList[1];
this.endInfo[index].province = poi.addressComponent.province;
this.endInfo[index].city = poi.addressComponent.city;
this.endInfo[index].area = poi.addressComponent.district;
this.endInfo[index].address = poi.formattedAddress;
break;
default:
break;
}
if (this.startInfo[0]?.area && this.endInfo[0]?.area) {
this.amapService.drivingCompute([...this.startInfo], [...this.endInfo]).subscribe((res: any) => {
this.totalDistance = res?.distance;
this.totalTime = res?.time;
});
if (this.startInfo[0]?.area && this.endInfo[0]?.area) {
this.amapService.drivingCompute([...this.startInfo], [...this.endInfo]).subscribe((res: any) => {
this.totalDistance = res?.distance;
this.totalTime = res?.time;
});
}
return true
} else {
this.service.msgSrv.warning('请重新手动选择地址!')
return false
}
return true
} else {
this.service.msgSrv.warning('请重新手动选择地址!')
return false
}
}
});
}
initSF3() {
@ -916,11 +944,11 @@ export class OrderManagementBulkDetailChangeComponent implements OnInit {
});
};
agreement(value: any) {
if(value ==='1'){
if (value === '1') {
this.modalTitle = '附件信息';
this.modalcontent = this.i?.contractContent?.contractContent;
}else if(value === '2'){
} else if (value === '2') {
this.modalTitle = '补充协议';
this.modalcontent = this.i?.supplementContent?.contractContent;
}

View File

@ -55,7 +55,7 @@ export class OrderManagementVehicleDetailChangeComponent implements OnInit {
billExpenses: any[] = []; //运费信息表格信息
dirvingMessage = [];
modalcontent: any;
modalTitle:string = '';
modalTitle: string = '';
attObj: any;
totalObj: any;
approvalLsit: any;
@ -126,7 +126,7 @@ export class OrderManagementVehicleDetailChangeComponent implements OnInit {
// readOnly: this.i.billStatus !== '4' || this.i.billStatus !== '3',
ui: {
widget: 'upload',
action: apiConf.fileUpload,
action: apiConf.waterFileUpload,
fileType: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
@ -134,7 +134,14 @@ export class OrderManagementVehicleDetailChangeComponent implements OnInit {
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '提货单',
data: {
appId: this.envSrv.env.appId
appId: this.envSrv.env.appId,
content: [
`上传用户:${this.i?.driverName}(${this.i?.driverTelephone})`,
`上传位置:${this.i?.loadingAddressArr[0]}`,
`上传时间:${format(new Date(), 'yyyy-MM-dd HH:mm:ss')}`,
],
position: '2',
fontSize: '100'
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
@ -165,7 +172,7 @@ export class OrderManagementVehicleDetailChangeComponent implements OnInit {
// readOnly: this.i.billStatus !== '4' || this.i.billStatus !== '3',
ui: {
widget: 'upload',
action: apiConf.fileUpload,
action: apiConf.waterFileUpload,
fileType: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
@ -173,7 +180,14 @@ export class OrderManagementVehicleDetailChangeComponent implements OnInit {
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '人车货照片',
data: {
appId: this.envSrv.env.appId
appId: this.envSrv.env.appId,
content: [
`上传用户:${this.i?.driverName}(${this.i?.driverTelephone})`,
`上传位置:${this.i?.loadingAddressArr[0]}`,
`上传时间:${format(new Date(), 'yyyy-MM-dd HH:mm:ss')}`,
],
position: '2',
fontSize: '100'
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
@ -212,7 +226,7 @@ export class OrderManagementVehicleDetailChangeComponent implements OnInit {
// readOnly: this.i.billStatus !== '4' || this.i.billStatus !== '3',
ui: {
widget: 'upload',
action: apiConf.fileUpload,
action: apiConf.waterFileUpload,
fileType: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
@ -220,7 +234,14 @@ export class OrderManagementVehicleDetailChangeComponent implements OnInit {
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '提货单',
data: {
appId: this.envSrv.env.appId
appId: this.envSrv.env.appId,
content: [
`上传用户:${this.i?.driverName}(${this.i?.driverTelephone})`,
`上传位置:${this.i?.unloadingAddressArr[0]}`,
`上传时间:${format(new Date(), 'yyyy-MM-dd HH:mm:ss')}`,
],
position: '2',
fontSize: '100'
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
@ -251,7 +272,7 @@ export class OrderManagementVehicleDetailChangeComponent implements OnInit {
// readOnly: this.i.billStatus !== '4' || this.i.billStatus !== '3',
ui: {
widget: 'upload',
action: apiConf.fileUpload,
action: apiConf.waterFileUpload,
fileType: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
@ -259,7 +280,14 @@ export class OrderManagementVehicleDetailChangeComponent implements OnInit {
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '人车货照片',
data: {
appId: this.envSrv.env.appId
appId: this.envSrv.env.appId,
content: [
`上传用户:${this.i?.driverName}(${this.i?.driverTelephone})`,
`上传位置:${this.i?.unloadingAddressArr[0]}`,
`上传时间:${format(new Date(), 'yyyy-MM-dd HH:mm:ss')}`,
],
position: '2',
fontSize: '100'
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
@ -391,52 +419,52 @@ export class OrderManagementVehicleDetailChangeComponent implements OnInit {
}
});
// 对装货凭证进行初始化
this.formData = {
loadingLadingBillFilePath: [
{
uid: 'logo',
name: 'LOGO',
status: 'done',
url: res?.loadingLadingBillFilePath,
response: {
url: res?.loadingLadingBillFilePath
}
this.formData = {
loadingLadingBillFilePath: [
{
uid: 'logo',
name: 'LOGO',
status: 'done',
url: res?.loadingLadingBillFilePath,
response: {
url: res?.loadingLadingBillFilePath
}
],
loadingPeopleVehiclesGoodsFilePath: [
{
uid: 'logo',
name: 'LOGO',
status: 'done',
}
],
loadingPeopleVehiclesGoodsFilePath: [
{
uid: 'logo',
name: 'LOGO',
status: 'done',
url: res?.loadingPeopleVehiclesGoodsFilePath,
response: {
url: res?.loadingPeopleVehiclesGoodsFilePath,
response: {
url: res?.loadingPeopleVehiclesGoodsFilePath,
}
}
],
unloadingLadingBillFilePath: [
{
uid: 'logo',
name: 'LOGO',
status: 'done',
url: res?.unloadingLadingBillFilePath,
response: {
url: res?.unloadingLadingBillFilePath
}
}
],
unloadingLadingBillFilePath: [
{
uid: 'logo',
name: 'LOGO',
status: 'done',
url: res?.unloadingLadingBillFilePath,
response: {
url: res?.unloadingLadingBillFilePath
}
],
unloadingPeopleVehiclesGoodsFilePath: [
{
uid: 'logo',
name: 'LOGO',
status: 'done',
url: res?.unloadingPeopleVehiclesGoodsFilePath,
response: {
url: res?.unloadingPeopleVehiclesGoodsFilePath
}
}
],
unloadingPeopleVehiclesGoodsFilePath: [
{
uid: 'logo',
name: 'LOGO',
status: 'done',
url: res?.unloadingPeopleVehiclesGoodsFilePath,
response: {
url: res?.unloadingPeopleVehiclesGoodsFilePath
}
]
};
}
]
};
// 发车时间到车时间初始化
this.loadTime = res?.loadTime;
this.unloadTime = res?.unloadTime;
@ -560,43 +588,43 @@ export class OrderManagementVehicleDetailChangeComponent implements OnInit {
nzContent: AmapPoiPickerComponent,
nzWidth: 900,
nzOnOk: item => {
if(item?.poi) {
const poi = item.poi;
const locList = poi.pois;
switch (type) {
case 'start':
this.startInfo[index].detailedAddress = poi.formattedAddress;
this.startInfo[index].longitude = locList[0];
this.startInfo[index].latitude = locList[1];
this.startInfo[index].province = poi.addressComponent.province;
this.startInfo[index].city = poi.addressComponent.city;
this.startInfo[index].area = poi.addressComponent.district;
this.startInfo[index].address = poi.formattedAddress;
break;
case 'end':
this.endInfo[index].detailedAddress = poi.formattedAddress;
this.endInfo[index].longitude = locList[0];
this.endInfo[index].latitude = locList[1];
this.endInfo[index].province = poi.addressComponent.province;
this.endInfo[index].city = poi.addressComponent.city;
this.endInfo[index].area = poi.addressComponent.district;
this.endInfo[index].address = poi.formattedAddress;
break;
default:
break;
}
if (item?.poi) {
const poi = item.poi;
const locList = poi.pois;
switch (type) {
case 'start':
this.startInfo[index].detailedAddress = poi.formattedAddress;
this.startInfo[index].longitude = locList[0];
this.startInfo[index].latitude = locList[1];
this.startInfo[index].province = poi.addressComponent.province;
this.startInfo[index].city = poi.addressComponent.city;
this.startInfo[index].area = poi.addressComponent.district;
this.startInfo[index].address = poi.formattedAddress;
break;
case 'end':
this.endInfo[index].detailedAddress = poi.formattedAddress;
this.endInfo[index].longitude = locList[0];
this.endInfo[index].latitude = locList[1];
this.endInfo[index].province = poi.addressComponent.province;
this.endInfo[index].city = poi.addressComponent.city;
this.endInfo[index].area = poi.addressComponent.district;
this.endInfo[index].address = poi.formattedAddress;
break;
default:
break;
}
if (this.startInfo[0]?.area && this.endInfo[0]?.area) {
this.amapService.drivingCompute([...this.startInfo], [...this.endInfo]).subscribe((res: any) => {
this.totalDistance = res?.distance;
this.totalTime = res?.time;
});
if (this.startInfo[0]?.area && this.endInfo[0]?.area) {
this.amapService.drivingCompute([...this.startInfo], [...this.endInfo]).subscribe((res: any) => {
this.totalDistance = res?.distance;
this.totalTime = res?.time;
});
}
return true
} else {
this.service.msgSrv.warning('请重新手动选择地址!')
return false
}
return true
} else {
this.service.msgSrv.warning('请重新手动选择地址!')
return false
}
}
});
}
@ -855,11 +883,11 @@ export class OrderManagementVehicleDetailChangeComponent implements OnInit {
});
};
agreement(value: any) {
if(value ==='1'){
if (value === '1') {
this.modalTitle = '附件信息';
this.modalcontent = this.i?.contractContent?.contractContent;
}else if(value === '2'){
} else if (value === '2') {
this.modalTitle = '补充协议';
this.modalcontent = this.i?.supplementContent?.contractContent;
}

View File

@ -20,6 +20,7 @@ import { NzModalRef } from 'ng-zorro-antd/modal';
import { Observable, Observer } from 'rxjs';
import { EAEnvironmentService } from '@shared';
import { OrderManagementService } from '../../../services/order-management.service';
import format from 'date-fns/format';
@Component({
selector: 'app-order-management-voucher-view',
@ -34,14 +35,14 @@ export class orderManagementVoucherViewComponent implements OnInit {
formData: any;
datas: any;
Status: any;
data: any ={
data: any = {
weight: 0,
volume: 0
};
@ViewChild('sf', { static: false }) sf!: SFComponent;
schema: SFSchema = {};
ui: SFUISchema = {};
constructor(private modal: NzModalRef, private msgSrv: NzMessageService, public http: _HttpClient, public service: OrderManagementService,private datePipe: DatePipe,private envSrv: EAEnvironmentService, ) {}
constructor(private modal: NzModalRef, private msgSrv: NzMessageService, public http: _HttpClient, public service: OrderManagementService, private datePipe: DatePipe, private envSrv: EAEnvironmentService,) { }
ngOnInit(): void {
// console.log(this.i)
@ -51,406 +52,462 @@ export class orderManagementVoucherViewComponent implements OnInit {
}
initSF() {
console.log(this.Status)
if(this.Status == 1) {
if (this.Status == 1) {
this.schema = {
properties: {
loadingLadingBillFilePath: {
type: 'string',
title: '装货凭证',
ui: {
widget: 'upload',
action: apiConf.fileUpload,
fileType: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
resReName: 'data.fullFileWatermarkPath',
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '提货单',
data: {
appId: this.envSrv.env.appId,
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
return new Observable((observer: Observer<boolean>) => {
const isLt1M = file.size / 1024 / 1024 < 5;
const fileType = 'image/png,image/jpeg';
if (fileType.indexOf(file.type) === -1) {
this.service.msgSrv.warning('图片格式不正确!');
observer.complete();
return;
}
if (!isLt1M) {
this.service.msgSrv.warning('图片大小超过5M!');
observer.complete();
return;
}
observer.next(isLt1M);
observer.complete();
});
},
multiple: false,
listType: 'picture-card',
} as SFUploadWidgetSchema,
},
loadingPeopleVehiclesGoodsFilePath: {
type: 'string',
title: '',
ui: {
widget: 'upload',
action: apiConf.fileUpload,
fileType: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
resReName: 'data.fullFileWatermarkPath',
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '人车货照片',
data: {
appId: this.envSrv.env.appId,
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
return new Observable((observer: Observer<boolean>) => {
const isLt1M = file.size / 1024 / 1024 < 5;
const fileType = 'image/png,image/jpeg';
if (fileType.indexOf(file.type) === -1) {
this.service.msgSrv.warning('图片格式不正确!');
observer.complete();
return;
}
if (!isLt1M) {
this.service.msgSrv.warning('图片大小超过5M!');
observer.complete();
return;
}
observer.next(isLt1M);
observer.complete();
});
},
multiple: false,
listType: 'picture-card',
} as SFUploadWidgetSchema,
},
no4: {
type: 'string',
title: '',
ui: {
widget: 'text',
},
default: '单张大小不超过5M支持.jpg、.jpeg和 .png格式',
},
unloadingLadingBillFilePath: {
type: 'string',
title: '卸货凭证',
ui: {
widget: 'upload',
action: apiConf.fileUpload,
fileType: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
resReName: 'data.fullFileWatermarkPath',
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '提货单',
data: {
appId: this.envSrv.env.appId,
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
return new Observable((observer: Observer<boolean>) => {
const isLt1M = file.size / 1024 / 1024 < 5;
const fileType = 'image/png,image/jpeg';
if (fileType.indexOf(file.type) === -1) {
this.service.msgSrv.warning('图片格式不正确!');
observer.complete();
return;
}
if (!isLt1M) {
this.service.msgSrv.warning('图片大小超过5M!');
observer.complete();
return;
}
observer.next(isLt1M);
observer.complete();
});
},
multiple: false,
listType: 'picture-card',
} as SFUploadWidgetSchema,
},
unloadingPeopleVehiclesGoodsFilePath: {
type: 'string',
title: '',
ui: {
widget: 'upload',
action: apiConf.fileUpload,
fileType: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
resReName: 'data.fullFileWatermarkPath',
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '人车货照片',
data: {
appId: this.envSrv.env.appId,
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
return new Observable((observer: Observer<boolean>) => {
const isLt1M = file.size / 1024 / 1024 < 5;
const fileType = 'image/png,image/jpeg';
if (fileType.indexOf(file.type) === -1) {
this.service.msgSrv.warning('图片格式不正确!');
observer.complete();
return;
}
if (!isLt1M) {
this.service.msgSrv.warning('图片大小超过5M!');
observer.complete();
return;
}
observer.next(isLt1M);
observer.complete();
});
},
multiple: false,
listType: 'picture-card',
} as SFUploadWidgetSchema,
}
},
required: ['loadingLadingBillFilePath', 'loadingPeopleVehiclesGoodsFilePath','unloadingLadingBillFilePath','unloadingPeopleVehiclesGoodsFilePath' ]
};
}else {
this.schema = {
properties: {
no0: {
type: 'string',
title: '',
ui: {
widget: 'custom',
},
},
loadingLadingBillFilePath: {
type: 'string',
title: '装货凭证',
readOnly: true,
ui: {
widget: 'upload',
action: apiConf.fileUpload,
fileType: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
resReName: 'data.fullFileWatermarkPath',
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '提货单',
data: {
appId: this.envSrv.env.appId,
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
return new Observable((observer: Observer<boolean>) => {
const isLt1M = file.size / 1024 / 1024 < 5;
const fileType = 'image/png,image/jpeg';
if (fileType.indexOf(file.type) === -1) {
this.service.msgSrv.warning('图片格式不正确!');
observer.complete();
return;
}
if (!isLt1M) {
this.service.msgSrv.warning('图片大小超过5M!');
observer.complete();
return;
}
observer.next(isLt1M);
observer.complete();
});
},
multiple: false,
listType: 'picture-card',
} as SFUploadWidgetSchema,
},
loadingPeopleVehiclesGoodsFilePath: {
type: 'string',
title: '',
readOnly: true,
ui: {
widget: 'upload',
action: apiConf.fileUpload,
fileType: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
resReName: 'data.fullFileWatermarkPath',
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '人车货照片',
data: {
appId: this.envSrv.env.appId,
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
return new Observable((observer: Observer<boolean>) => {
const isLt1M = file.size / 1024 / 1024 < 5;
const fileType = 'image/png,image/jpeg';
if (fileType.indexOf(file.type) === -1) {
this.service.msgSrv.warning('图片格式不正确!');
observer.complete();
return;
}
if (!isLt1M) {
this.service.msgSrv.warning('图片大小超过5M!');
observer.complete();
return;
}
observer.next(isLt1M);
observer.complete();
});
},
multiple: false,
listType: 'picture-card',
} as SFUploadWidgetSchema,
},
this.schema = {
no4: {
type: 'string',
title: '',
ui: {
widget: 'text',
},
default: '单张大小不超过5M支持.jpg、.jpeg和 .png格式',
properties: {
loadingLadingBillFilePath: {
type: 'string',
title: '装货凭证',
ui: {
widget: 'upload',
action: apiConf.waterFileUpload,
fileType: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
resReName: 'data.fullFileWatermarkPath',
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '提货单',
data: {
appId: this.envSrv.env.appId,
content: [
`上传用户:${this.record?.driverName}(${this.record?.driverTelephone})`,
`上传位置:${this.record?.loadingAddressArr[0]}`,
`上传时间:${format(new Date(), 'yyyy-MM-dd HH:mm:ss')}`,
],
position: '2',
fontSize: '100'
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
return new Observable((observer: Observer<boolean>) => {
const isLt1M = file.size / 1024 / 1024 < 5;
const fileType = 'image/png,image/jpeg';
if (fileType.indexOf(file.type) === -1) {
this.service.msgSrv.warning('图片格式不正确!');
observer.complete();
return;
}
if (!isLt1M) {
this.service.msgSrv.warning('图片大小超过5M!');
observer.complete();
return;
}
observer.next(isLt1M);
observer.complete();
});
},
multiple: false,
listType: 'picture-card',
} as SFUploadWidgetSchema,
},
loadingPeopleVehiclesGoodsFilePath: {
type: 'string',
title: '',
ui: {
widget: 'upload',
action: apiConf.waterFileUpload,
fileType: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
resReName: 'data.fullFileWatermarkPath',
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '人车货照片',
data: {
appId: this.envSrv.env.appId,
content: [
`上传用户:${this.record?.driverName}(${this.record?.driverTelephone})`,
`上传位置:${this.record?.loadingAddressArr[0]}`,
`上传时间:${format(new Date(), 'yyyy-MM-dd HH:mm:ss')}`,
],
position: '2',
fontSize: '100'
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
return new Observable((observer: Observer<boolean>) => {
const isLt1M = file.size / 1024 / 1024 < 5;
const fileType = 'image/png,image/jpeg';
if (fileType.indexOf(file.type) === -1) {
this.service.msgSrv.warning('图片格式不正确!');
observer.complete();
return;
}
if (!isLt1M) {
this.service.msgSrv.warning('图片大小超过5M!');
observer.complete();
return;
}
observer.next(isLt1M);
observer.complete();
});
},
multiple: false,
listType: 'picture-card',
} as SFUploadWidgetSchema,
},
no4: {
type: 'string',
title: '',
ui: {
widget: 'text',
},
default: '单张大小不超过5M支持.jpg、.jpeg和 .png格式',
},
unloadingLadingBillFilePath: {
type: 'string',
title: '卸货凭证',
ui: {
widget: 'upload',
action: apiConf.waterFileUpload,
fileType: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
resReName: 'data.fullFileWatermarkPath',
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '提货单',
data: {
appId: this.envSrv.env.appId,
content: [
`上传用户:${this.record?.driverName}(${this.record?.driverTelephone})`,
`上传位置:${this.record?.unloadingAddressArr[0]}`,
`上传时间:${format(new Date(), 'yyyy-MM-dd HH:mm:ss')}`,
],
position: '2',
fontSize: '100'
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
return new Observable((observer: Observer<boolean>) => {
const isLt1M = file.size / 1024 / 1024 < 5;
const fileType = 'image/png,image/jpeg';
if (fileType.indexOf(file.type) === -1) {
this.service.msgSrv.warning('图片格式不正确!');
observer.complete();
return;
}
if (!isLt1M) {
this.service.msgSrv.warning('图片大小超过5M!');
observer.complete();
return;
}
observer.next(isLt1M);
observer.complete();
});
},
multiple: false,
listType: 'picture-card',
} as SFUploadWidgetSchema,
},
unloadingPeopleVehiclesGoodsFilePath: {
type: 'string',
title: '',
ui: {
widget: 'upload',
action: apiConf.waterFileUpload,
fileType: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
resReName: 'data.fullFileWatermarkPath',
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '人车货照片',
data: {
appId: this.envSrv.env.appId,
content: [
`上传用户:${this.record?.driverName}(${this.record?.driverTelephone})`,
`上传位置:${this.record?.unloadingAddressArr[0]}`,
`上传时间:${format(new Date(), 'yyyy-MM-dd HH:mm:ss')}`,
],
position: '2',
fontSize: '100'
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
return new Observable((observer: Observer<boolean>) => {
const isLt1M = file.size / 1024 / 1024 < 5;
const fileType = 'image/png,image/jpeg';
if (fileType.indexOf(file.type) === -1) {
this.service.msgSrv.warning('图片格式不正确!');
observer.complete();
return;
}
if (!isLt1M) {
this.service.msgSrv.warning('图片大小超过5M!');
observer.complete();
return;
}
observer.next(isLt1M);
observer.complete();
});
},
multiple: false,
listType: 'picture-card',
} as SFUploadWidgetSchema,
}
},
no6: {
type: 'string',
title: '',
ui: {
widget: 'custom',
},
required: ['loadingLadingBillFilePath', 'loadingPeopleVehiclesGoodsFilePath', 'unloadingLadingBillFilePath', 'unloadingPeopleVehiclesGoodsFilePath']
};
} else {
this.schema = {
properties: {
no0: {
type: 'string',
title: '',
ui: {
widget: 'custom',
},
},
loadingLadingBillFilePath: {
type: 'string',
title: '装货凭证',
readOnly: true,
ui: {
widget: 'upload',
action: apiConf.waterFileUpload,
fileType: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
resReName: 'data.fullFileWatermarkPath',
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '提货单',
data: {
appId: this.envSrv.env.appId,
content: [
`上传用户:${this.record?.driverName}(${this.record?.driverTelephone})`,
`上传位置:${this.record?.loadingAddressArr[0]}`,
`上传时间:${format(new Date(), 'yyyy-MM-dd HH:mm:ss')}`,
],
position: '2',
fontSize: '100'
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
return new Observable((observer: Observer<boolean>) => {
const isLt1M = file.size / 1024 / 1024 < 5;
const fileType = 'image/png,image/jpeg';
if (fileType.indexOf(file.type) === -1) {
this.service.msgSrv.warning('图片格式不正确!');
observer.complete();
return;
}
if (!isLt1M) {
this.service.msgSrv.warning('图片大小超过5M!');
observer.complete();
return;
}
observer.next(isLt1M);
observer.complete();
});
},
multiple: false,
listType: 'picture-card',
} as SFUploadWidgetSchema,
},
loadingPeopleVehiclesGoodsFilePath: {
type: 'string',
title: '',
readOnly: true,
ui: {
widget: 'upload',
action: apiConf.waterFileUpload,
fileType: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
resReName: 'data.fullFileWatermarkPath',
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '人车货照片',
data: {
appId: this.envSrv.env.appId,
content: [
`上传用户:${this.record?.driverName}(${this.record?.driverTelephone})`,
`上传位置:${this.record?.loadingAddressArr[0]}`,
`上传时间:${format(new Date(), 'yyyy-MM-dd HH:mm:ss')}`,
],
position: '2',
fontSize: '100'
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
return new Observable((observer: Observer<boolean>) => {
const isLt1M = file.size / 1024 / 1024 < 5;
const fileType = 'image/png,image/jpeg';
if (fileType.indexOf(file.type) === -1) {
this.service.msgSrv.warning('图片格式不正确!');
observer.complete();
return;
}
if (!isLt1M) {
this.service.msgSrv.warning('图片大小超过5M!');
observer.complete();
return;
}
observer.next(isLt1M);
observer.complete();
});
},
multiple: false,
listType: 'picture-card',
} as SFUploadWidgetSchema,
},
no4: {
type: 'string',
title: '',
ui: {
widget: 'text',
},
default: '单张大小不超过5M支持.jpg、.jpeg和 .png格式',
},
no6: {
type: 'string',
title: '',
ui: {
widget: 'custom',
},
},
unloadingLadingBillFilePath: {
type: 'string',
title: '卸货凭证',
readOnly: true,
ui: {
widget: 'upload',
action: apiConf.waterFileUpload,
fileType: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
resReName: 'data.fullFileWatermarkPath',
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '提货单',
data: {
appId: this.envSrv.env.appId,
content: [
`上传用户:${this.record?.driverName}(${this.record?.driverTelephone})`,
`上传位置:${this.record?.unloadingAddressArr[0]}`,
`上传时间:${format(new Date(), 'yyyy-MM-dd HH:mm:ss')}`,
],
position: '2',
fontSize: '100'
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
return new Observable((observer: Observer<boolean>) => {
const isLt1M = file.size / 1024 / 1024 < 5;
const fileType = 'image/png,image/jpeg';
if (fileType.indexOf(file.type) === -1) {
this.service.msgSrv.warning('图片格式不正确!');
observer.complete();
return;
}
if (!isLt1M) {
this.service.msgSrv.warning('图片大小超过5M!');
observer.complete();
return;
}
observer.next(isLt1M);
observer.complete();
});
},
multiple: false,
listType: 'picture-card',
} as SFUploadWidgetSchema,
},
unloadingPeopleVehiclesGoodsFilePath: {
type: 'string',
title: '',
readOnly: true,
ui: {
widget: 'upload',
action: apiConf.waterFileUpload,
fileType: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
resReName: 'data.fullFileWatermarkPath',
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '人车货照片',
data: {
appId: this.envSrv.env.appId,
content: [
`上传用户:${this.record?.driverName}(${this.record?.driverTelephone})`,
`上传位置:${this.record?.unloadingAddressArr[0]}`,
`上传时间:${format(new Date(), 'yyyy-MM-dd HH:mm:ss')}`,
],
position: '2',
fontSize: '100'
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
return new Observable((observer: Observer<boolean>) => {
const isLt1M = file.size / 1024 / 1024 < 5;
const fileType = 'image/png,image/jpeg';
if (fileType.indexOf(file.type) === -1) {
this.service.msgSrv.warning('图片格式不正确!');
observer.complete();
return;
}
if (!isLt1M) {
this.service.msgSrv.warning('图片大小超过5M!');
observer.complete();
return;
}
observer.next(isLt1M);
observer.complete();
});
},
multiple: false,
listType: 'picture-card',
} as SFUploadWidgetSchema,
}
},
unloadingLadingBillFilePath: {
type: 'string',
title: '卸货凭证',
readOnly: true,
ui: {
widget: 'upload',
action: apiConf.fileUpload,
fileType: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
resReName: 'data.fullFileWatermarkPath',
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '提货单',
data: {
appId: this.envSrv.env.appId,
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
return new Observable((observer: Observer<boolean>) => {
const isLt1M = file.size / 1024 / 1024 < 5;
const fileType = 'image/png,image/jpeg';
if (fileType.indexOf(file.type) === -1) {
this.service.msgSrv.warning('图片格式不正确!');
observer.complete();
return;
}
if (!isLt1M) {
this.service.msgSrv.warning('图片大小超过5M!');
observer.complete();
return;
}
observer.next(isLt1M);
observer.complete();
});
},
multiple: false,
listType: 'picture-card',
} as SFUploadWidgetSchema,
},
unloadingPeopleVehiclesGoodsFilePath: {
type: 'string',
title: '',
readOnly: true,
ui: {
widget: 'upload',
action: apiConf.fileUpload,
fileType: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
resReName: 'data.fullFileWatermarkPath',
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '人车货照片',
data: {
appId: this.envSrv.env.appId,
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
return new Observable((observer: Observer<boolean>) => {
const isLt1M = file.size / 1024 / 1024 < 5;
const fileType = 'image/png,image/jpeg';
if (fileType.indexOf(file.type) === -1) {
this.service.msgSrv.warning('图片格式不正确!');
observer.complete();
return;
}
if (!isLt1M) {
this.service.msgSrv.warning('图片大小超过5M!');
observer.complete();
return;
}
observer.next(isLt1M);
observer.complete();
});
},
multiple: false,
listType: 'picture-card',
} as SFUploadWidgetSchema,
}
},
required: ['loadingLadingBillFilePath', 'loadingPeopleVehiclesGoodsFilePath','unloadingLadingBillFilePath','unloadingPeopleVehiclesGoodsFilePath' ]
};
}
required: ['loadingLadingBillFilePath', 'loadingPeopleVehiclesGoodsFilePath', 'unloadingLadingBillFilePath', 'unloadingPeopleVehiclesGoodsFilePath']
};
}
this.ui = {
'*': {
spanLabelFixed: 100,
grid: { span: 20 }
},
$unloadingLadingBillFilePath: { grid: { span: 12} },
$unloadingPeopleVehiclesGoodsFilePath: { grid: { span: 12} },
$loadingLadingBillFilePath: { grid: { span: 12} },
$loadingPeopleVehiclesGoodsFilePath: { grid: { span: 12} },
$unloadingLadingBillFilePath: { grid: { span: 12 } },
$unloadingPeopleVehiclesGoodsFilePath: { grid: { span: 12 } },
$loadingLadingBillFilePath: { grid: { span: 12 } },
$loadingPeopleVehiclesGoodsFilePath: { grid: { span: 12 } },
};
}
save(value: any): void {
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,
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,
}
console.log(params)
this.service.request(this.service.$api_get_updateBillExamine, params).subscribe((res) => {
if (res) {
this.service.msgSrv.success('修改成功!')
this.modal.destroy(true);
}
console.log(params)
this.service.request(this.service.$api_get_updateBillExamine, params).subscribe((res) => {
if(res) {
this.service.msgSrv.success('修改成功!')
this.modal.destroy(true);
}
})
})
}
sure() {
const params = [this.i?.id];
this.service.downloadFile(this.service.$api_createBillTakeGoods,params)
this.service.downloadFile(this.service.$api_createBillDischargeGoods,params)
this.service.msgSrv.success('生成电子单据成功!')
this.modal.destroy(true);
this.service.downloadFile(this.service.$api_createBillTakeGoods, params)
this.service.downloadFile(this.service.$api_createBillDischargeGoods, params)
this.service.msgSrv.success('生成电子单据成功!')
this.modal.destroy(true);
}
// 确认到车界面信息(两个只能看的图片)
// 确认到车界面信息(两个只能看的图片)
initData() {
this.service.request(this.service.$api_get_getCredentials, { id : this.i?.id}).subscribe((res) => {
this.service.request(this.service.$api_get_getCredentials, { id: this.i?.id }).subscribe((res) => {
console.log(res)
this.datas = res
if (res.unloadingLadingBillFilePath) {
this.formData = {
if (res.unloadingLadingBillFilePath) {
this.formData = {
loadingLadingBillFilePath: [
{
uid: 'logo',
@ -461,30 +518,30 @@ export class orderManagementVoucherViewComponent implements OnInit {
url: res.loadingLadingBillFilePath,
},
},
],
loadingPeopleVehiclesGoodsFilePath: [
{
uid: 'logo',
name: 'LOGO',
status: 'done',
url: res.loadingPeopleVehiclesGoodsFilePath,
response: {
url: res.loadingPeopleVehiclesGoodsFilePath,
},
},
],
unloadingLadingBillFilePath: [
{
uid: 'logo',
name: 'LOGO',
status: 'done',
url: res.unloadingLadingBillFilePath,
response: {
url: res.unloadingLadingBillFilePath,
},
},
],
unloadingPeopleVehiclesGoodsFilePath: [
],
loadingPeopleVehiclesGoodsFilePath: [
{
uid: 'logo',
name: 'LOGO',
status: 'done',
url: res.loadingPeopleVehiclesGoodsFilePath,
response: {
url: res.loadingPeopleVehiclesGoodsFilePath,
},
},
],
unloadingLadingBillFilePath: [
{
uid: 'logo',
name: 'LOGO',
status: 'done',
url: res.unloadingLadingBillFilePath,
response: {
url: res.unloadingLadingBillFilePath,
},
},
],
unloadingPeopleVehiclesGoodsFilePath: [
{
uid: 'logo',
name: 'LOGO',
@ -494,7 +551,7 @@ export class orderManagementVoucherViewComponent implements OnInit {
url: res.unloadingPeopleVehiclesGoodsFilePath,
},
},
],
],
};
}
})
@ -503,7 +560,7 @@ export class orderManagementVoucherViewComponent implements OnInit {
this.modal.destroy(true);
}
openlaod(value: any) {
if(value === 1) {
if (value === 1) {
const a = document.createElement('a');
a.href = this.datas?.loadingElectronicsLadingBillFilePath;
document.body.appendChild(a);
@ -518,6 +575,6 @@ export class orderManagementVoucherViewComponent implements OnInit {
a.click(); //点击下载
document.body.removeChild(a); //下载完成移除元素
}
}
}

View File

@ -1,24 +1,17 @@
import { Component, OnInit, ViewChild } from '@angular/core';
import { DatePipe } from '@angular/common';
import { Component, OnInit, ViewChild } from '@angular/core';
import { apiConf } from '@conf/api.conf';
import {
SFComponent,
SFCustomWidgetSchema,
SFDateWidgetSchema,
SFNumberWidgetSchema,
SFRadioWidgetSchema,
SFSchema,
SFSelectWidgetSchema,
SFTextareaWidgetSchema,
SFUISchema,
SFComponent, SFSchema, SFUISchema,
SFUploadWidgetSchema
} from '@delon/form';
import { apiConf } from '@conf/api.conf';
import { _HttpClient } from '@delon/theme';
import { EAEnvironmentService } from '@shared';
import format from 'date-fns/format';
import { NzMessageService } from 'ng-zorro-antd/message';
import { NzModalRef } from 'ng-zorro-antd/modal';
import { WaybillManagementServe } from 'src/app/routes/waybill-management/services/waybill-management.service';
import { Observable, Observer } from 'rxjs';
import { EAEnvironmentService } from '@shared';
import { WaybillManagementServe } from 'src/app/routes/waybill-management/services/waybill-management.service';
@Component({
selector: 'app-order-management-vehicle-sure-arrive',
@ -45,7 +38,7 @@ export class VehicleSureArriveComponent implements OnInit {
public service: WaybillManagementServe,
private datePipe: DatePipe,
private envSrv: EAEnvironmentService
) {}
) { }
ngOnInit(): void {
console.log(this.i);
@ -67,7 +60,7 @@ export class VehicleSureArriveComponent implements OnInit {
title: '装货凭证',
ui: {
widget: 'upload',
action: apiConf.fileUpload,
action: apiConf.waterFileUpload,
accept: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
@ -75,7 +68,14 @@ export class VehicleSureArriveComponent implements OnInit {
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '提货单',
data: {
appId: this.envSrv.env.appId
appId: this.envSrv.env.appId,
content: [
`上传用户:${this.record?.driverName}(${this.record?.driverTelephone})`,
`上传位置:${this.record?.loadingAddressArr[0]}`,
`上传时间:${format(new Date(), 'yyyy-MM-dd HH:mm:ss')}`,
],
position: '2',
fontSize: '100'
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
@ -105,7 +105,7 @@ export class VehicleSureArriveComponent implements OnInit {
title: '',
ui: {
widget: 'upload',
action: apiConf.fileUpload,
action: apiConf.waterFileUpload,
accept: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
@ -113,7 +113,14 @@ export class VehicleSureArriveComponent implements OnInit {
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '人车货照片',
data: {
appId: this.envSrv.env.appId
appId: this.envSrv.env.appId,
content: [
`上传用户:${this.record?.driverName}(${this.record?.driverTelephone})`,
`上传位置:${this.record?.loadingAddressArr[0]}`,
`上传时间:${format(new Date(), 'yyyy-MM-dd HH:mm:ss')}`,
],
position: '2',
fontSize: '100'
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
@ -151,7 +158,7 @@ export class VehicleSureArriveComponent implements OnInit {
title: '卸货凭证',
ui: {
widget: 'upload',
action: apiConf.fileUpload,
action: apiConf.waterFileUpload,
accept: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
@ -159,7 +166,14 @@ export class VehicleSureArriveComponent implements OnInit {
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '提货单',
data: {
appId: this.envSrv.env.appId
appId: this.envSrv.env.appId,
content: [
`上传用户:${this.record?.driverName}(${this.record?.driverTelephone})`,
`上传位置:${this.record?.unloadingAddressArr[0]}`,
`上传时间:${format(new Date(), 'yyyy-MM-dd HH:mm:ss')}`,
],
position: '2',
fontSize: '100'
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
@ -189,7 +203,7 @@ export class VehicleSureArriveComponent implements OnInit {
title: '',
ui: {
widget: 'upload',
action: apiConf.fileUpload,
action: apiConf.waterFileUpload,
accept: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
@ -197,7 +211,14 @@ export class VehicleSureArriveComponent implements OnInit {
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '人车货照片',
data: {
appId: this.envSrv.env.appId
appId: this.envSrv.env.appId,
content: [
`上传用户:${this.record?.driverName}(${this.record?.driverTelephone})`,
`上传位置:${this.record?.unloadingAddressArr[0]}`,
`上传时间:${format(new Date(), 'yyyy-MM-dd HH:mm:ss')}`,
],
position: '2',
fontSize: '100'
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
@ -252,7 +273,7 @@ export class VehicleSureArriveComponent implements OnInit {
title: '装货凭证',
ui: {
widget: 'upload',
action: apiConf.fileUpload,
action: apiConf.waterFileUpload,
accept: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
@ -260,7 +281,14 @@ export class VehicleSureArriveComponent implements OnInit {
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '提货单',
data: {
appId: this.envSrv.env.appId
appId: this.envSrv.env.appId,
content: [
`上传用户:${this.record?.driverName}(${this.record?.driverTelephone})`,
`上传位置:${this.record?.loadingAddressArr[0]}`,
`上传时间:${format(new Date(), 'yyyy-MM-dd HH:mm:ss')}`,
],
position: '2',
fontSize: '100'
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
@ -290,7 +318,7 @@ export class VehicleSureArriveComponent implements OnInit {
title: '',
ui: {
widget: 'upload',
action: apiConf.fileUpload,
action: apiConf.waterFileUpload,
accept: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
@ -298,7 +326,14 @@ export class VehicleSureArriveComponent implements OnInit {
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '人车货照片',
data: {
appId: this.envSrv.env.appId
appId: this.envSrv.env.appId,
content: [
`上传用户:${this.record?.driverName}(${this.record?.driverTelephone})`,
`上传位置:${this.record?.loadingAddressArr[0]}`,
`上传时间:${format(new Date(), 'yyyy-MM-dd HH:mm:ss')}`,
],
position: '2',
fontSize: '100'
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
@ -336,7 +371,7 @@ export class VehicleSureArriveComponent implements OnInit {
title: '卸货凭证',
ui: {
widget: 'upload',
action: apiConf.fileUpload,
action: apiConf.waterFileUpload,
accept: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
@ -344,7 +379,14 @@ export class VehicleSureArriveComponent implements OnInit {
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '提货单',
data: {
appId: this.envSrv.env.appId
appId: this.envSrv.env.appId,
content: [
`上传用户:${this.record?.driverName}(${this.record?.driverTelephone})`,
`上传位置:${this.record?.unloadingAddressArr[0]}`,
`上传时间:${format(new Date(), 'yyyy-MM-dd HH:mm:ss')}`,
],
position: '2',
fontSize: '100'
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
@ -374,7 +416,7 @@ export class VehicleSureArriveComponent implements OnInit {
title: '',
ui: {
widget: 'upload',
action: apiConf.fileUpload,
action: apiConf.waterFileUpload,
accept: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
@ -382,7 +424,14 @@ export class VehicleSureArriveComponent implements OnInit {
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '人车货照片',
data: {
appId: this.envSrv.env.appId
appId: this.envSrv.env.appId,
content: [
`上传用户:${this.record?.driverName}(${this.record?.driverTelephone})`,
`上传位置:${this.record?.unloadingAddressArr[0]}`,
`上传时间:${format(new Date(), 'yyyy-MM-dd HH:mm:ss')}`,
],
position: '2',
fontSize: '100'
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
@ -426,7 +475,7 @@ export class VehicleSureArriveComponent implements OnInit {
console.log(this.Status);
console.log(value?.imgUrl3?.data?.fullFilePath);
console.log(value?.imgUrl3?.url);
if (this.Status === 1) {
if (!value.time) {
this.service.msgSrv.warning('卸货时间为空!');
@ -442,7 +491,7 @@ export class VehicleSureArriveComponent implements OnInit {
};
params.time = this.datePipe.transform(value.time, 'yyyy-MM-dd HH:mm:ss ');
console.log(params);
this.service.request(this.service.$api_get_insertWholeUnloadCarInfo, params).subscribe(res => {
if (res) {
this.service.msgSrv.success('确认到车成功!');

View File

@ -1,24 +1,17 @@
import { DatePipe } from '@angular/common';
import { Component, OnInit, ViewChild } from '@angular/core';
import { apiConf } from '@conf/api.conf';
import {
SFComponent,
SFCustomWidgetSchema,
SFDateWidgetSchema,
SFNumberWidgetSchema,
SFRadioWidgetSchema,
SFSchema,
SFSelectWidgetSchema,
SFTextareaWidgetSchema,
SFUISchema,
SFComponent, SFSchema, SFUISchema,
SFUploadWidgetSchema
} from '@delon/form';
import { apiConf } from '@conf/api.conf';
import { _HttpClient } from '@delon/theme';
import { EAEnvironmentService } from '@shared';
import { NzMessageService } from 'ng-zorro-antd/message';
import { NzModalRef } from 'ng-zorro-antd/modal';
import { Observable, Observer } from 'rxjs';
import { WaybillManagementServe } from 'src/app/routes/waybill-management/services/waybill-management.service';
import { EAEnvironmentService, EADateUtil } from '@shared';
import { DatePipe } from '@angular/common';
import format from 'date-fns/format';
@Component({
selector: 'app-order-management-vehicle-sure-depart',
@ -44,7 +37,7 @@ export class VehicleSureDepartComponent implements OnInit {
public service: WaybillManagementServe,
private envSrv: EAEnvironmentService,
private datePipe: DatePipe
) {}
) { }
ngOnInit(): void {
this.initSF();
@ -82,7 +75,14 @@ export class VehicleSureDepartComponent implements OnInit {
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '提货单',
data: {
appId: this.envSrv.env.appId
appId: this.envSrv.env.appId,
content: [
`上传用户:${this.record?.driverName}(${this.record?.driverTelephone})`,
`上传位置:${this.record?.loadingAddressArr[0]}`,
`上传时间:${format(new Date(), 'yyyy-MM-dd HH:mm:ss')}`,
],
position: '2',
fontSize: '100'
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
@ -112,7 +112,7 @@ export class VehicleSureDepartComponent implements OnInit {
title: '',
ui: {
widget: 'upload',
action: apiConf.fileUpload,
action: apiConf.waterFileUpload,
accept: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
@ -120,7 +120,14 @@ export class VehicleSureDepartComponent implements OnInit {
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '人车货照片',
data: {
appId: this.envSrv.env.appId
appId: this.envSrv.env.appId,
content: [
`上传用户:${this.record?.driverName}(${this.record?.driverTelephone})`,
`上传位置:${this.record?.loadingAddressArr[0]}`,
`上传时间:${format(new Date(), 'yyyy-MM-dd HH:mm:ss')}`,
],
position: '2',
fontSize: '100'
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
@ -183,7 +190,7 @@ export class VehicleSureDepartComponent implements OnInit {
title: '装货凭证',
ui: {
widget: 'upload',
action: apiConf.fileUpload,
action: apiConf.waterFileUpload,
accept: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
@ -191,7 +198,14 @@ export class VehicleSureDepartComponent implements OnInit {
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '提货单',
data: {
appId: this.envSrv.env.appId
appId: this.envSrv.env.appId,
content: [
`上传用户:${this.record?.driverName}(${this.record?.driverTelephone})`,
`上传位置:${this.record?.loadingAddressArr[0]}`,
`上传时间:${format(new Date(), 'yyyy-MM-dd HH:mm:ss')}`,
],
position: '2',
fontSize: '100'
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {
@ -221,7 +235,7 @@ export class VehicleSureDepartComponent implements OnInit {
title: '',
ui: {
widget: 'upload',
action: apiConf.fileUpload,
action: apiConf.waterFileUpload,
accept: 'image/png,image/jpeg,image/jpg,image/gif',
limit: 1,
limitFileCount: 1,
@ -229,7 +243,14 @@ export class VehicleSureDepartComponent implements OnInit {
urlReName: 'data.fullFileWatermarkPath',
descriptionI18n: '人车货照片',
data: {
appId: this.envSrv.env.appId
appId: this.envSrv.env.appId,
content: [
`上传用户:${this.record?.driverName}(${this.record?.driverTelephone})`,
`上传位置:${this.record?.loadingAddressArr[0]}`,
`上传时间:${format(new Date(), 'yyyy-MM-dd HH:mm:ss')}`,
],
position: '2',
fontSize: '100'
},
name: 'multipartFile',
beforeUpload: (file: any, fileList: any) => {

View File

@ -282,7 +282,16 @@ export class InvoiceRequestedComponent {
if (res?.reconciliationUrl) {
this.service.reviewPDF(res.reconciliationUrl);
} else {
this.service.msgSrv.warning('获取对账单失败');
this.service
.request(this.service.$api_download_Reconciliatio_pdf, { vatappHId: item.id, esignFlowId: res.esignFlowId })
.subscribe(rs => {
if (rs?.reconciliationUrl) {
this.service.reviewPDF(rs.reconciliationUrl);
} else {
// this.service.msgSrv.warning('获取对账单失败');
}
});
// this.service.msgSrv.warning('获取对账单失败');
}
});
}

View File

@ -132,6 +132,8 @@ export class TicketService extends ShipperBaseService {
$api_get_express_routes = '/api/fcc/ficoExpressH/searchRoutes';
// 下载对账单文件
$api_downloadPdf = '/api/fcc/ficoVatappBill/downloadPdf';
// 对账单文件下载
$api_download_Reconciliatio_pdf = '/api/fcc/ficoVatappBill/downloadReconciliationPdf';
// 根据地区code查询列表
$api_get_region_by_code = '/api/mdc/pbc/region/getRegionByCode';

View File

@ -1,4 +1,5 @@
import { Component, OnInit, ViewChild, Type } from '@angular/core';
import { Router } from '@angular/router';
import { STComponent, STColumn, STChange } from '@delon/abc/st';
import {
SFComponent,
@ -57,7 +58,14 @@ export class WaybillManagementAbnormalAppearComponent implements OnInit {
click: item => this.reviewDetailAction(item)
},
{ title: '异常类型', index: 'exceptionTypeLabel', width: '180px', className: 'text-left' },
{ title: '关联运单号', index: 'wayBillCode', width: '180px', className: 'text-left' },
{
title: '关联运单号',
index: 'wayBillCode',
width: '180px',
className: 'text-left',
type: 'link',
click: item => this.routeToBill(item)
},
{ title: '网络货运人', index: 'enterpriseInfoName', width: '250px', className: 'text-left' },
{ title: '货主', index: 'shipperAppUserName', width: '250px', className: 'text-left' },
{ title: '装货地', index: 'loadingAddressArr', width: '220px', className: 'text-left' },
@ -84,7 +92,14 @@ export class WaybillManagementAbnormalAppearComponent implements OnInit {
click: item => this.reviewDetailAction(item)
},
{ title: '异常类型', index: 'exceptionTypeLabel', width: '180px', className: 'text-left' },
{ title: '关联运单号', index: 'wayBillCode', width: '180px', className: 'text-left' },
{
title: '关联运单号',
index: 'wayBillCode',
width: '180px',
className: 'text-left',
type: 'link',
click: item => this.routeToBill(item)
},
{ title: '网络货运人', index: 'enterpriseInfoName', width: '180px', className: 'text-left' },
{ title: '货主', index: 'shipperAppUserName', width: '180px', className: 'text-left' },
{ title: '装货地', index: 'loadingAddressArr', width: '180px', className: 'text-left' },
@ -121,7 +136,12 @@ export class WaybillManagementAbnormalAppearComponent implements OnInit {
}
itemInfo: any = {};
replyContent = '';
constructor(public service: WaybillManagementServe, private nzModalService: NzModalService, public shipperSrv: ShipperBaseService) {}
constructor(
public service: WaybillManagementServe,
private nzModalService: NzModalService,
public shipperSrv: ShipperBaseService,
private router: Router
) {}
ngOnInit(): void {
this.initSF();
@ -144,7 +164,7 @@ export class WaybillManagementAbnormalAppearComponent implements OnInit {
reviewDetailAction(item: any) {
this.itemInfo = {};
this.service.request(this.service.$api_get_listOperate_detail, { id: item.id }).subscribe(res => {
this.service.request(`${this.service.$api_get_listOperate_detail}${item.id}`, {}, 'GET').subscribe(res => {
if (res) {
this.itemInfo = res;
const modal = this.nzModalService.create({
@ -186,6 +206,14 @@ export class WaybillManagementAbnormalAppearComponent implements OnInit {
});
}
routeToBill(item: any) {
if (item.billType === '1') {
this.router.navigate([`/waybill-management/vehicle/vehicle-detail/${item.wayBillId}`]);
} else {
this.router.navigate([`/waybill-management/bulk/bulk-detail/${item.wayBillId}`]);
}
}
initSF() {
this.schema = {
properties: {

View File

@ -52,7 +52,7 @@ export class WaybillManagementServe extends BaseService {
// 查询运营端异常上报
$api_get_listOperatePage = '/api/sdc/exceptionReport/listOperatePage';
// 查询运营端异常上报详情
$api_get_listOperate_detail = '/api/sdc/exceptionReport/getOperateDetail';
$api_get_listOperate_detail = '/api/sdc/exceptionReport/operateDetail/';
// 运营端异常回复
$api_operate_reply = '/api/sdc/exceptionReport/operateReply';
// 查询运营端异常上报数据统计