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

This commit is contained in:
Taric Xin
2022-05-09 17:01:00 +08:00
18 changed files with 416 additions and 390 deletions

View File

@ -4,7 +4,7 @@
* @Author : Shiming
* @Date : 2022-04-06 10:57:56
* @LastEditors : Shiming
* @LastEditTime : 2022-05-07 09:43:16
* @LastEditTime : 2022-05-09 13:59:19
* @FilePath : \\tms-obc-web\\src\\app\\routes\\datatable\\components\\datascreen\\datascreen.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved.
-->
@ -48,31 +48,6 @@
<nz-card nzTitle="本年交易趋势">
<app-financetable-curve-min #curve [chartData]="chartData2"></app-financetable-curve-min>
</nz-card>
<nz-card nzTitle="实时货源" style="height: 400px">
<st
#st
multiSort
[columns]="columns"
[scroll]="{ y: '280px' }"
[data]="service.$api_getRealTimeSupply"
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }"
[res]="{ reName: { list: 'data' } }"
[page]="{ show: false, showSize: false, pageSizes: [5, 50, 100] }"
[loading]="service.http.loading"
>
<ng-template st-row="index" let-item let-index="index">
{{ index + 1 }}
</ng-template>
<ng-template st-row="weight" let-item let-index="index">
{{ item.weight ? item.weight + '吨' : '' }}
{{ item.volume ? item.volume + '方' : '' }}
</ng-template>
<ng-template st-row="weight" let-item let-index="index">
{{ item.weight ? item.weight + '吨' : '' }}
{{ item.volume ? item.volume + '方' : '' }}
</ng-template>
</st>
</nz-card>
</div>
<div nz-col class="gutter-row" nzXs="12" nzSm="12" nzMd="12" nzLg="12" nzXl="8" nzXXl="8">
<nz-card>
@ -91,11 +66,6 @@
<div style="min-height: 550px">
<app-datatable-customindex-map style="max-height: 680px" #map [chartData]="chartData"></app-datatable-customindex-map>
</div>
<nz-card>
<nz-row [nzGutter]="24">
<g2-bar #bar height="350" [delay]="300" repaint="true" [title]="'本月发货量排名'" [data]="salesData2" (ready)="genData()"></g2-bar>
</nz-row>
</nz-card>
</div>
<div nz-col class="gutter-row" nzXs="12" nzSm="12" nzMd="12" nzLg="12" nzXl="8" nzXXl="8">
<nz-card>
@ -156,11 +126,48 @@
</nz-col>
</nz-row>
</nz-card>
</div>
</div>
<div nz-row [nzGutter]="24">
<div nz-col class="gutter-row" nzXs="12" nzSm="12" nzMd="12" nzLg="12" nzXl="8" nzXXl="8">
<nz-card nzTitle="实时货源" style="height: 400px">
<st
#st
multiSort
[columns]="columns"
[scroll]="{ y: '280px' }"
[data]="service.$api_getRealTimeSupply"
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }"
[res]="{ reName: { list: 'data' } }"
[page]="{ show: false, showSize: false, pageSizes: [5, 50, 100] }"
[loading]="service.http.loading"
>
<ng-template st-row="index" let-item let-index="index">
{{ index + 1 }}
</ng-template>
<ng-template st-row="weight" let-item let-index="index">
{{ item.weight ? item.weight + '吨' : '' }}
{{ item.volume ? item.volume + '方' : '' }}
</ng-template>
<ng-template st-row="weight" let-item let-index="index">
{{ item.weight ? item.weight + '吨' : '' }}
{{ item.volume ? item.volume + '方' : '' }}
</ng-template>
</st>
</nz-card>
</div>
<div nz-col class="gutter-row" nzXs="12" nzSm="12" nzMd="12" nzLg="12" nzXl="8" nzXXl="8">
<nz-card style="height: 400px">
<g2-bar #bar height="350" [delay]="300" repaint="true" [title]="'本月发货量排名'" [data]="salesData2" (ready)="genData()"></g2-bar>
</nz-card>
</div>
<div nz-col class="gutter-row" nzXs="12" nzSm="12" nzMd="12" nzLg="12" nzXl="8" nzXXl="8">
<nz-card nzTitle="实时运单风控" style="height: 400px">
<st
#st
multiSort
[scroll]="{ y: '280px' }"
[scroll]="{ y: '300px' }"
[columns]="orderColumns"
[data]="service.$api_getRealTimeWaybillRiskControl"
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqOrderParams }"

View File

@ -8,7 +8,7 @@
font-size: 14px;
}
.ant-table-thead > tr > th, .ant-table-tbody > tr > td, .ant-table tfoot > tr > th, .ant-table tfoot > tr > td {
padding: 0;
padding: 5px;
font-size: 12px;
}
}

View File

@ -39,10 +39,17 @@
</div>
<div>
<st #st [bordered]="true" [scroll]="{ x: '2000px',y:scrollY }" [data]="service.$api_get_billExamine_page"
[columns]="columns" [req]="{ process: beforeReq }"
[res]="{ reName: { list: 'data.records', total: 'data.total' } , process: afterRes}"
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }" [loading]="false">
<st
#st
[bordered]="true"
[scroll]="{ x: '2000px', y: scrollY }"
[data]="service.$api_get_billExamine_page"
[columns]="columns"
[req]="{ process: beforeReq }"
[res]="{ reName: { list: 'data.records', total: 'data.total' }, process: afterRes }"
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
[loading]="false"
>
<ng-template st-row="freightPrice" let-item let-index="index">
{{ item.freightPrice | currency }}
</ng-template>
@ -62,8 +69,7 @@
<app-imagelist style="width: 40px" [imgList]="[item.unloadingLadingBillFilePath]"> </app-imagelist>
</div>
<div *ngIf="item.unloadingPeopleVehiclesGoodsFilePath">
<app-imagelist style="width: 40px" [imgList]="[item.unloadingPeopleVehiclesGoodsFilePath]">
</app-imagelist>
<app-imagelist style="width: 40px" [imgList]="[item.unloadingPeopleVehiclesGoodsFilePath]"> </app-imagelist>
</div>
</div>
</ng-template>
@ -72,26 +78,21 @@
<div *ngIf="item?.unloadingTime">卸 | {{ item?.unloadingTime }}</div>
</ng-template>
<ng-template st-row="driverName" let-item let-index="index">
<div> {{ item?.driverName }}{{ item?.driverPhone ? "/" + item?.driverPhone : ''}}{{ item?.carNo ? "/" +
item?.carNo : '' }} </div>
<div> {{ item?.driverName }}{{ item?.driverPhone ? '/' + item?.driverPhone : '' }}{{ item?.carNo ? '/' + item?.carNo : '' }} </div>
</ng-template>
<ng-template st-row="payeeName" let-item let-index="index">
<div> {{ item?.payeeName }}{{item?.payeePhone ? "/" + item?.payeePhone : '' }} </div>
<div> {{ item?.payeeName }}{{ item?.payeePhone ? '/' + item?.payeePhone : '' }} </div>
</ng-template>
<ng-template st-row="billCode" let-item let-index="index">
<!-- <div>{{ item.billCode }}</div> -->
<a *ngIf="item.resourceType == '1'" [routerLink]="'/order-management/vehicle/vehicle-detail/' + item.id">{{
item.billCode }}</a>
<a *ngIf="item.resourceType == '2'" [routerLink]="'/order-management/bulk/bulk-detail/' + item.id">{{
item.billCode }}</a>
<a *ngIf="item.resourceType == '3'" [routerLink]="'/order-management/vehicle/vehicle-detail/' + item.id">{{
item.billCode }}</a>
<a *ngIf="item.resourceType == '1'" [routerLink]="'/order-management/vehicle/vehicle-detail/' + item.id">{{ item.billCode }}</a>
<a *ngIf="item.resourceType == '2'" [routerLink]="'/order-management/bulk/bulk-detail/' + item.id">{{ item.billCode }}</a>
<a *ngIf="item.resourceType == '3'" [routerLink]="'/order-management/vehicle/vehicle-detail/' + item.id">{{ item.billCode }}</a>
<div>
<span>{{item?.billStatusLabel}}</span>
<span>{{ item?.billStatusLabel }}</span>
</div>
<div>
<span>{{item?.resourceTypeLabel}}{{item?.serviceTypeLabel === item?.resourceTypeLabel ?
'':item?.serviceTypeLabel}}</span>
<span>{{ item?.resourceTypeLabel }}{{ item?.serviceTypeLabel === item?.resourceTypeLabel ? '' : item?.serviceTypeLabel }}</span>
</div>
</ng-template>
<ng-template st-row="goodsName" let-item let-index="index">
@ -116,20 +117,18 @@
<ng-template #extraTemplate>
<div>
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()" acl
[acl-ability]="['ORDER-RECEIPTS-search']">筛选</button>
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()" acl [acl-ability]="['ORDER-RECEIPTS-search']"
>筛选</button
>
<button nz-button nzDanger [disabled]="false" (click)="exprot()" acl [acl-ability]="['ORDER-RECEIPTS-export']">导出</button>
<button nz-button nz-dropdown [nzDropdownMenu]="menu" nzPlacement="bottomLeft">
更多<i nz-icon nzType="down" nzTheme="outline"></i></button>
更多<i nz-icon nzType="down" nzTheme="outline"></i
></button>
<nz-dropdown-menu #menu="nzDropdownMenu">
<ul nz-menu>
<li nz-menu-item (click)="sign('1')" acl [acl-ability]="['ORDER-RECEIPTS-billAuditPassBatch']">
批量通过
</li>
<li nz-menu-item (click)="sign1('1')" acl [acl-ability]="['ORDER-RECEIPTS- electronicBilling']">
批量生成电子单据
</li>
<li nz-menu-item (click)="sign('1')" acl [acl-ability]="['ORDER-RECEIPTS-billAuditPassBatch']"> 批量通过 </li>
<li nz-menu-item (click)="sign1('1')" acl [acl-ability]="['ORDER-RECEIPTS- electronicBilling']"> 批量生成电子单据 </li>
</ul>
</nz-dropdown-menu>
</div>
</ng-template>
</ng-template>

View File

@ -133,7 +133,13 @@ export class ParterChannelSalesListComponent implements OnInit {
acl: { ability: ['channelSales-frozen'] },
iif: (item) => {return item.stateLocked == false},
click: (_record, _modal, _instance) => this.stop(_record),
}
},
{
text: '启用',
acl: { ability: ['channelSales-open'] },
iif: (item) => {return item.stateLocked == true},
click: (_record, _modal, _instance) => this.open(_record),
},
]
}
];
@ -185,6 +191,24 @@ export class ParterChannelSalesListComponent implements OnInit {
});
}
}
open(record: STData) {
if (record.stateLocked) {
const params = {
id: record.id
}
this.modalService.confirm({
nzTitle: '<i>启用确认</i>',
nzContent: `<b>确定启用该账号吗?</br>`,
nzOnOk: () =>
this.service.request(this.service.$api_activeChannelSales, params).subscribe(res => {
if (res) {
this.service.msgSrv.success('启用成功!');
this.st.reload();
}
})
});
}
}
/**
* 重置表单

View File

@ -21,6 +21,8 @@ export class ChannelSalesService extends BaseService {
$api_getChannelSalesInfo = '/api/mdc/channelSalesManagement/getChannelSalesInfo';
// 冻结渠道销售
$api_frozenChannelSales = '/api/mdc/channelSalesManagement/frozenChannelSales';
// 激活渠道销售
$api_activeChannelSales = '/api/mdc/channelSalesManagement/activeChannelSales';
constructor(public injector: Injector) {

View File

@ -4,7 +4,7 @@
* @Author : Shiming
* @Date : 2022-04-29 17:28:23
* @LastEditors : Shiming
* @LastEditTime : 2022-05-09 11:33:34
* @LastEditTime : 2022-05-09 14:40:09
* @FilePath : \\tms-obc-web\\src\\app\\routes\\partner\\partner-list\\components\\index\\partner-list.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved.
-->
@ -61,6 +61,14 @@
[scroll]="{ x: '1200px' }"
[page]="{}"
>
<ng-template st-row="enterpriseName" let-item let-index="index">
<div>
{{item.partnerType ? item.enterpriseName || item.contactName : ''}}
</div>
<div *ngIf="item.partnerType == 1">
管理员: {{item.contactName }}
</div>
</ng-template>
</st>
</nz-card>
@ -104,7 +112,6 @@
[req]="{ process: beforeReq, params: { effectiveStatus: 2, newPartnerId: selectItem.id } }"
[loading]="service.http.loading"
[page]="{ show: false }"
(change)="stChange($event)"
>
</st>

View File

@ -236,10 +236,6 @@ export class PartnerListComponent {
type: 'string',
title: '合伙人名称'
},
contactName: {
type: 'string',
title: '企业管理员'
},
contactMobile: {
type: 'string',
title: '手机号'
@ -252,9 +248,6 @@ export class PartnerListComponent {
searchDebounceTime: 300,
searchLoadingText: '搜索中...',
allowClear: true,
visibleIf: {
expand: (value: boolean) => value
},
onSearch: (q: any) => {
let str = q.replace(/^\s+|\s+$/g, '');
if (str) {
@ -412,13 +405,11 @@ export class PartnerListComponent {
return [
{
title: '合伙人名称',
index: 'enterpriseName',
render: 'enterpriseName',
width: 180,
format: item => (item.partnerType ? `${item.enterpriseName || item.contactName}` : '')
},
{ title: '付款编码', index: 'payCode', width: 160 },
{ title: '邀请码', index: 'invitationCode', className: 'text-center', width: 130 },
{ title: '企业管理员', index: 'contactName', width: 150, format: item => (item.partnerType ? `${item.contactName}` : '') },
{ title: '手机号', index: 'contactMobile', className: 'text-center', width: 150 },
{ title: '类型', index: 'partnerType', className: 'text-center', width: 130, type: 'enum', enum: { 1: '企业', 2: '个人' } },
{ title: '注册渠道', index: 'source', type: 'enum', enum: { 1: '合伙人注册', 2: '平台添加' }, width: 130 },

View File

@ -219,13 +219,23 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
// }
}
},
goodsName: {
type: 'string',
title: '货物名称',
ui: {
// hidden: true,
// visibleIf: {
// goodsTypeName: (value: any) => value && value !== '其它'
// }
}
},
goodsTypeId: {
type: 'string',
title: '货物类型',
title: '',
ui: {
widget: 'select',
placeholder: '请选择',
errors: { required: '请选择货物类型' },
errors: { required: '请选择货物名称' },
asyncData: () =>
this.shipperSrv.loadConfigByKey('goods.name.config.type').pipe(
map((data: any) => {
@ -247,47 +257,38 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
hidden: true
}
},
goodsNameId: {
type: 'string',
title: '',
ui: {
widget: 'select',
placeholder: '请选择',
errors: { required: '请填写货物类型' },
change: (value: any, data: any) => {
this.sf3.setValue('/goodsName', data.label);
},
visibleIf: {
goodsTypeName: (value: any) => value && value !== '其它'
}
}
},
goodsName: {
type: 'string',
title: '',
ui: {
hidden: true,
visibleIf: {
goodsTypeName: (value: any) => value && value !== '其它'
}
}
},
goodsName1: {
type: 'string',
title: '',
maxLength: 20,
ui: {
errors: { required: '请填写货物类型' },
visibleIf: {
goodsTypeName: (value: any) => value && value === '其它'
},
blur: (value: any) => {
this.checkGoodsName();
}
}
}
// goodsName1: {
// type: 'string',
// title: '',
// maxLength: 20,
// ui: {
// errors: { required: '请填写货物名称' },
// visibleIf: {
// goodsTypeName: (value: any) => value && value === '其它'
// },
// blur: (value: any) => {
// this.checkGoodsName();
// }
// }
// },
// goodsNameId: {
// type: 'string',
// title: '',
// ui: {
// widget: 'select',
// placeholder: '请选择',
// errors: { required: '请填写货物名称' },
// change: (value: any, data: any) => {
// // this.sf3.setValue('/goodsName', data.label);
// },
// visibleIf: {
// goodsTypeName: (value: any) => value && value !== '其它'
// }
// }
// },
},
required: ['goodsTypeId', 'goodsName', 'goodsNameId', 'goodsName1']
required: ['goodsTypeId', 'goodsName', ]
};
this.ui3 = {
'*': {
@ -708,10 +709,6 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
const LoadingList = this.startInfo.concat(this.endInfo);
// 货物信息
const sf3Values = { ...this.sf3.value };
if (sf3Values.goodsTypeName === '其它') {
sf3Values.goodsName = sf3Values.goodsName1;
delete sf3Values.goodsName1;
}
if (this.sf4.value.carModel.includes('999')) {
this.sf4.value.carModel = ['999'];
}

View File

@ -235,13 +235,34 @@ export class SupplyManagementBulkReleasePublishComponent implements OnInit {
initSF3() {
this.schema3 = {
properties: {
goodsTypeId: {
goodsTips: {
type: 'string',
title: '',
ui: {
widget: 'custom',
class: 'goods_Tips_item',
// visibleIf: {
// goodsTypeName: (value: any) => value && value === '其它'
// }
}
},
goodsName: {
type: 'string',
title: '货物名称',
ui: {
// hidden: true,
// visibleIf: {
// goodsTypeName: (value: any) => value && value !== '其它'
// }
}
},
goodsTypeId: {
type: 'string',
title: '',
ui: {
widget: 'select',
placeholder: '请选择',
errors: { required: '请选择货物类型' },
errors: { required: '请选择货物名称' },
asyncData: () =>
this.shipperSrv.loadConfigByKey('goods.name.config.type').pipe(
map((data: any) => {
@ -263,44 +284,8 @@ export class SupplyManagementBulkReleasePublishComponent implements OnInit {
hidden: true
}
},
goodsNameId: {
type: 'string',
title: '',
ui: {
widget: 'select',
placeholder: '请选择',
errors: { required: '请填写货物名称' },
change: (value: any, data: any) => {
this.sf3.setValue('/goodsName', data.label);
},
visibleIf: {
goodsTypeName: (value: any) => value && value !== '其它'
}
}
},
goodsName: {
type: 'string',
title: '',
ui: {
hidden: true,
visibleIf: {
goodsTypeName: (value: any) => value && value !== '其它'
}
}
},
goodsName1: {
type: 'string',
title: '',
maxLength: 20,
ui: {
errors: { required: '请填写货物名称' },
visibleIf: {
goodsTypeName: (value: any) => value && value === '其它'
}
}
}
},
required: ['goodsTypeId', 'goodsName', 'goodsNameId','goodsName1']
required: ['goodsTypeId', 'goodsName', ]
};
this.ui3 = {
'*': {
@ -624,10 +609,6 @@ export class SupplyManagementBulkReleasePublishComponent implements OnInit {
// 货物信息
const sf3Values = { ...this.sf3.value };
if (sf3Values.goodsTypeName === '其它') {
sf3Values.goodsName = sf3Values.goodsName1;
delete sf3Values.goodsName1;
}
if (this.sf4.value.carModel.includes('999')) {
this.sf4.value.carModel = ['999']
}

View File

@ -264,13 +264,23 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
// }
}
},
goodsName: {
type: 'string',
title: '货物名称',
ui: {
// hidden: true,
// visibleIf: {
// goodsTypeName: (value: any) => value && value !== '其它'
// }
}
},
goodsTypeId: {
type: 'string',
title: '货物类型',
title: '',
ui: {
widget: 'select',
placeholder: '请选择',
errors: { required: '请选择货物类型' },
errors: { required: '请选择货物名称' },
asyncData: () =>
this.shipperSrv.loadConfigByKey('goods.name.config.type').pipe(
map((data: any) => {
@ -292,47 +302,38 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
hidden: true
}
},
goodsNameId: {
type: 'string',
title: '',
ui: {
widget: 'select',
placeholder: '请选择',
errors: { required: '请填写货物类型' },
change: (_value: any, data: any) => {
this.sf3.setValue('/goodsName', data.label);
},
visibleIf: {
goodsTypeName: (value: any) => value && value !== '其它'
}
}
},
goodsName: {
type: 'string',
title: '',
ui: {
hidden: true,
visibleIf: {
goodsTypeName: (value: any) => value && value !== '其它'
}
}
},
goodsName1: {
type: 'string',
title: '',
maxLength: 20,
ui: {
errors: { required: '请填写货物类型' },
visibleIf: {
goodsTypeName: (value: any) => value && value === '其它'
},
blur: (value: any) => {
this.checkGoodsName();
}
}
}
// goodsName1: {
// type: 'string',
// title: '',
// maxLength: 20,
// ui: {
// errors: { required: '请填写货物名称' },
// visibleIf: {
// goodsTypeName: (value: any) => value && value === '其它'
// },
// blur: (value: any) => {
// this.checkGoodsName();
// }
// }
// },
// goodsNameId: {
// type: 'string',
// title: '',
// ui: {
// widget: 'select',
// placeholder: '请选择',
// errors: { required: '请填写货物名称' },
// change: (value: any, data: any) => {
// // this.sf3.setValue('/goodsName', data.label);
// },
// visibleIf: {
// goodsTypeName: (value: any) => value && value !== '其它'
// }
// }
// },
},
required: ['goodsTypeId', 'goodsName', 'goodsNameId', 'goodsName1']
required: ['goodsTypeId', 'goodsName', ]
};
this.ui3 = {
'*': {
@ -1013,10 +1014,8 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
// 货物信息
const sf3Values = { ...this.sf3.value };
if (sf3Values.goodsTypeName === '其它') {
sf3Values.goodsName = sf3Values.goodsName1;
delete sf3Values.goodsName1;
}
console.log(sf3Values);
if (this.sf4.value.carModel.includes('999')) {
this.sf4.value.carModel = ['999'];
}

View File

@ -251,13 +251,23 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
// }
}
},
goodsName: {
type: 'string',
title: '货物名称',
ui: {
// hidden: true,
// visibleIf: {
// goodsTypeName: (value: any) => value && value !== '其它'
// }
}
},
goodsTypeId: {
type: 'string',
title: '货物类型',
title: '',
ui: {
widget: 'select',
placeholder: '请选择',
errors: { required: '请选择货物类型' },
errors: { required: '请选择货物名称' },
asyncData: () =>
this.shipperSrv.loadConfigByKey('goods.name.config.type').pipe(
map((data: any) => {
@ -279,47 +289,38 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
hidden: true
}
},
goodsNameId: {
type: 'string',
title: '',
ui: {
widget: 'select',
placeholder: '请选择',
errors: { required: '请填写货物类型' },
change: (value: any, data: any) => {
this.sf3.setValue('/goodsName', data.label);
},
visibleIf: {
goodsTypeName: (value: any) => value && value !== '其它'
}
}
},
goodsName: {
type: 'string',
title: '',
ui: {
hidden: true,
visibleIf: {
goodsTypeName: (value: any) => value && value !== '其它'
}
}
},
goodsName1: {
type: 'string',
title: '',
maxLength: 20,
ui: {
errors: { required: '请填写货物类型' },
visibleIf: {
goodsTypeName: (value: any) => value && value === '其它'
},
blur: (value: any) => {
this.checkGoodsName();
}
}
}
// goodsName1: {
// type: 'string',
// title: '',
// maxLength: 20,
// ui: {
// errors: { required: '请填写货物名称' },
// visibleIf: {
// goodsTypeName: (value: any) => value && value === '其它'
// },
// blur: (value: any) => {
// this.checkGoodsName();
// }
// }
// },
// goodsNameId: {
// type: 'string',
// title: '',
// ui: {
// widget: 'select',
// placeholder: '请选择',
// errors: { required: '请填写货物名称' },
// change: (value: any, data: any) => {
// // this.sf3.setValue('/goodsName', data.label);
// },
// visibleIf: {
// goodsTypeName: (value: any) => value && value !== '其它'
// }
// }
// },
},
required: ['goodsTypeId', 'goodsName', 'goodsNameId', 'goodsName1']
required: ['goodsTypeId', 'goodsName', ]
};
this.ui3 = {
'*': {
@ -978,10 +979,6 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
// 货物信息
const sf3Values = { ...this.sf3.value };
if (sf3Values.goodsTypeName === '其它') {
sf3Values.goodsName = sf3Values.goodsName1;
delete sf3Values.goodsName1;
}
if (this.sf4.value.carModel.includes('999')) {
this.sf4.value.carModel = ['999'];
}
@ -1020,19 +1017,18 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
insurancePackagedGoods: this.sf4.value.insurancePackagedGoods,
goodsValue: this.sf4.value.goodsValue
};
console.log(params);
// const modalRef = this.modalService.create({
// nzTitle: '运输协议',
// nzContent: TranAgreementComponent,
// nzWidth: 900,
// nzFooter: null,
// nzComponentParams: { object: params, shipperName: this.shipperName, type: 'onecar' }
// });
// modalRef.afterClose.subscribe(result => {
// if (result) {
// this.submit(submitType, params);
// }
// });
const modalRef = this.modalService.create({
nzTitle: '运输协议',
nzContent: TranAgreementComponent,
nzWidth: 900,
nzFooter: null,
nzComponentParams: { object: params, shipperName: this.shipperName, type: 'onecar' }
});
modalRef.afterClose.subscribe(result => {
if (result) {
this.submit(submitType, params);
}
});
}
// 提交
submit(submitType?: string, params?: any): void {
@ -1287,7 +1283,7 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
this.service.request(this.service.$api_checkGoodsName, name).subscribe(res => {
if (res === false) {
const modalRef = this.modalService.error({
nzTitle: '货物类型含有违禁词,请重新输入!',
nzTitle: '货物名称含有违禁词,请重新输入!',
});
modalRef.afterClose.subscribe(result => {
// this.sf3.setValue('/goodsName1', null);

View File

@ -19,91 +19,99 @@
</nz-card> -->
<nz-card class="table-box">
<div class="tab_header">
<label class="page_title">
<label class="driver">|</label>
销票处理</label>
<nz-tabset [nzTabBarExtraContent]="extraTemplate" (nzSelectedIndexChange)="selectChange($event)">
<nz-tab nzTitle="全部"></nz-tab>
<nz-tab nzTitle="待处理"></nz-tab>
<nz-tab nzTitle="待确认"></nz-tab>
<!-- <nz-tab nzTitle="已确认"></nz-tab> -->
</nz-tabset>
</div>
<div class="tab_header">
<label class="page_title">
<label class="driver">|</label>
销票处理</label
>
<nz-tabset [nzTabBarExtraContent]="extraTemplate" (nzSelectedIndexChange)="selectChange($event)">
<nz-tab nzTitle="全部"></nz-tab>
<nz-tab nzTitle="待处理"></nz-tab>
<nz-tab nzTitle="待确认"></nz-tab>
<!-- <nz-tab nzTitle="已确认"></nz-tab> -->
</nz-tabset>
</div>
<ng-template #extraTemplate>
<div class="d-flex align-items-center mr-sm">
<div class="mr-md">
已选择
<strong class="text-red">{{ selectedRows.length }}</strong> 张发票&nbsp;&nbsp; 发票金额总计
<strong class="text-red">{{totalCallNo }}</strong>
<a *ngIf="totalCallNo > 0" (click)="st.clearCheck();totalCallNo=0" class="ml-lg">清空</a>
</div>
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()">筛选</button>
<!-- <button nz-button *ngIf="resourceStatus===1 || !resourceStatus" (click)="this.batchPush()">推送开票</button> -->
<!-- <button nz-button *ngIf="resourceStatus===1 || !resourceStatus"
<ng-template #extraTemplate>
<div class="d-flex align-items-center mr-sm">
<div class="mr-md">
已选择
<strong class="text-red">{{ selectedRows.length }}</strong> 张发票&nbsp;&nbsp; 发票金额总计
<strong class="text-red">{{ totalCallNo }}</strong>
<a *ngIf="totalCallNo > 0" (click)="st.clearCheck(); totalCallNo = 0" class="ml-lg">清空</a>
</div>
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()">筛选</button>
<!-- <button nz-button *ngIf="resourceStatus===1 || !resourceStatus" (click)="this.batchPush()">推送开票</button> -->
<!-- <button nz-button *ngIf="resourceStatus===1 || !resourceStatus"
(click)="this.batchRemove(selectedRows)">移除</button>
<button nz-button *ngIf="resourceStatus===2 || !resourceStatus"
(click)="this.batchWithdraw(selectedRows)">撤回</button> -->
</div>
</div>
</ng-template>
<st
#st
[scroll]="{ x: '2000px', y: scrollY }"
[data]="service.$api_ficoVatinvHList"
[columns]="columns"
[page]="{}"
[req]="{ process: beforeReq }"
[res]="{ process: afterRes }"
[loading]="false"
(change)="stChange($event)"
>
<ng-template st-row="vatinvcode" let-item let-index="index" let-column="column">
{{ item.vatinvcode }} <br />
<label class="text-primary">{{ item.stsLabel }}</label>
</ng-template>
<st #st [scroll]="{ x: '2000px',y:scrollY }" [data]="service.$api_ficoVatinvHList" [columns]="columns" [page]="{}"
[req]="{process: beforeReq }" [res]="{process:afterRes }" [loading]="false" (change)="stChange($event)">
<ng-template st-row="vatinvcode" let-item let-index="index" let-column="column">
{{ item.vatinvcode }} <br>
<label class="text-primary">{{item.stsLabel}}</label>
</ng-template>
</st>
</st>
</nz-card>
<ng-template #requestedModal>
<div nz-row nzGutter="8">
<div nz-col nzSpan="24" se-container [labelWidth]="100" [col]="1">
<se label="购买方" class="mb-sm">
{{openInfo?.artoname}}
</se>
<se label="纳税号" class="mb-sm">
{{openInfo?.artotaxno}}
</se>
<se label="注册地址" class="mb-sm">
{{openInfo?.artoadd}}
</se>
<se label="注册电话" class="mb-sm">
{{openInfo?.artotel}}
</se>
<se label="开户行" class="mb-sm">
{{openInfo?.artobank}}
</se>
<se label="银行账户" class="mb-sm">
{{openInfo?.artoacc}}
</se>
<se label="服务名称" class="mb-sm">
{{openInfo?.vatnameLabel}}
</se>
<se label="发票备注栏" class="mb-sm">
{{openInfo?.vatremarks}}
</se>
<se label="其它要求" class="mb-sm">
{{openInfo?.otherremarks}}
</se>
<se label="销货清单" class="mb-sm">
{{openInfo?.isdetail?'需要':'不需要'}}
</se>
<se label="开票金额" class="mb-sm">
{{openInfo?.vatmoney | currency}}
</se>
<se label="开票日期" required>
<nz-date-picker [(ngModel)]="openInfo.invoicedate" nzShowTime nzPlaceHolder="请选择" style=" width: 100%;">
</nz-date-picker>
</se>
<se label="发票号码" required>
<input nz-input [(ngModel)]="openInfo.invoiceno" placeholder="请输入" />
</se>
<se label="发票代码" required>
<input nz-input [(ngModel)]="openInfo.invoiceno2" placeholder="请输入" />
</se>
</div>
<div nz-row nzGutter="8">
<div nz-col nzSpan="24" se-container [labelWidth]="100" [col]="1">
<se label="购买方" class="mb-sm">
{{ openInfo?.artoname }}
</se>
<se label="纳税号" class="mb-sm">
{{ openInfo?.artotaxno }}
</se>
<se label="注册地址" class="mb-sm">
{{ openInfo?.artoadd }}
</se>
<se label="注册电话" class="mb-sm">
{{ openInfo?.artotel }}
</se>
<se label="开户行" class="mb-sm">
{{ openInfo?.artobank }}
</se>
<se label="银行账户" class="mb-sm">
{{ openInfo?.artoacc }}
</se>
<se label="服务名称" class="mb-sm">
{{ openInfo?.vatnameLabel }}
</se>
<se label="发票备注栏" class="mb-sm">
{{ openInfo?.vatremarks }}
</se>
<se label="其它要求" class="mb-sm">
{{ openInfo?.otherremarks }}
</se>
<se label="销货清单" class="mb-sm">
{{ openInfo?.isdetail ? '需要' : '不需要' }}
</se>
<se label="开票金额" class="mb-sm">
{{ openInfo?.vatmoney | currency }}
</se>
<se label="开票日期" required>
<nz-date-picker [(ngModel)]="openInfo.invoicedate" nzShowTime nzPlaceHolder="请选择" style="width: 100%"> </nz-date-picker>
</se>
<se label="发票号码" required>
<input nz-input [(ngModel)]="openInfo.invoiceno" placeholder="请输入" />
</se>
<se label="发票代码" required>
<input nz-input [(ngModel)]="openInfo.invoiceno2" placeholder="请输入" />
</se>
</div>
</ng-template>
</div>
</ng-template>

View File

@ -279,16 +279,16 @@ export class CancellationInvoiceComponent extends BasicTableComponent {
asyncData: () => this.service.getNetworkFreightForwarder()
}
},
sts: {
title: '发票状态',
type: 'string',
ui: {
widget: 'dict-select',
containsAllLabel: true,
params: { dictKey: 'vatinv:status' },
containAllLable: true
} as SFSelectWidgetSchema
},
// sts: {
// title: '发票状态',
// type: 'string',
// ui: {
// widget: 'dict-select',
// containsAllLabel: true,
// params: { dictKey: 'vatinv:status' },
// containAllLable: true
// } as SFSelectWidgetSchema
// },
// or2derSn: {
// type: 'string',
// title: '订单号',

View File

@ -42,15 +42,25 @@
<nz-card [nzLoading]="service.http.loading" [nzBorderless]="true">
<div class="mb-md">
<div class="font-weight-blod text-md detail-title" style="justify-content: space-between;">
<div>
<div style="display: flex; justify-content: center;align-items: center;">
<a class="sign"></a>
<span>个人信息</span>
<label *ngIf="userIdentityDetail?.certificationStatus===1" style="color: #52c41a;" class="ml-md"><i nz-icon
nzType="check-circle" nzTheme="fill" class="mr-xs"></i>审核通过
</label>
<label *ngIf="userIdentityDetail?.certificationStatus===2" style="color: #ff4d4f;" class="ml-md"><i nz-icon
nzType="close-circle" nzTheme="fill" class="mr-xs"></i>驳回 驳回原因:{{userIdentityDetail?.certificationOpinions}}
<p style="margin-bottom: 0">
个人信息
<label *ngIf="userIdentityDetail?.tips" style="color: #ff4d4f"><i nz-icon nzType="info-circle"
nzTheme="fill" class="mr-xs"></i>驳回:<span nz-popover [nzPopoverTitle]="titleTemplate1" [nzPopoverContent]="contentTemplate1">
驳回原因
<ng-template #titleTemplate1>
原因
</ng-template>
<ng-template #contentTemplate1>
{{userIdentityDetail?.tips}}
</ng-template>
</span>
</label>
<label *ngIf="!userIdentityDetail?.tips" style="color: #52c41a"><i nz-icon nzType="check-circle"
nzTheme="fill" class="mr-xs"></i>审核通过
</label>
</p>
<label *ngIf="faceStatus == 1" style="color: #bec8c8; position: relative;
bottom: 2px;" class="ml-md"><i nz-icon nzType="check-circle" nzTheme="fill" class="mr-xs">人脸识别结果:已发起</i>
</label>
@ -179,15 +189,25 @@
<div class="mb-md">
<div class="font-weight-blod text-md detail-title" style="justify-content: space-between;">
<div>
<div style="display: flex; justify-content: center;align-items: center;">
<a class="sign"></a>
<span>驾驶证信息</span>
<label *ngIf="driverDetail?.approvalStatus===20" style="color: #52c41a;" class="ml-md"><i nz-icon
nzType="check-circle" nzTheme="fill" class="mr-xs"></i>审核通过
</label>
<label *ngIf="driverDetail?.approvalStatus===30" style="color: #ff4d4f;" class="ml-md"><i nz-icon
nzType="close-circle" nzTheme="fill" class="mr-xs"></i>驳回
<p style="margin-bottom: 0">
驾驶证信息
<label *ngIf="driverDetail?.tips" style="color: #ff4d4f"><i nz-icon nzType="info-circle"
nzTheme="fill" class="mr-xs"></i>驳回:<span nz-popover [nzPopoverTitle]="titleTemplate1" [nzPopoverContent]="contentTemplate1">
驳回原因
<ng-template #titleTemplate1>
原因
</ng-template>
<ng-template #contentTemplate1>
{{driverDetail?.tips}}
</ng-template>
</span>
</label>
<label *ngIf="!driverDetail?.tips" style="color: #52c41a"><i nz-icon nzType="check-circle"
nzTheme="fill" class="mr-xs"></i>审核通过
</label>
</p>
</div>
<div>
<ng-container *ngIf="isEditDriver;else editDriverButton">

View File

@ -2,16 +2,11 @@ import { DatePipe } from '@angular/common';
import { Component, OnInit, ViewChild } from '@angular/core';
import { ActivatedRoute } from '@angular/router';
import { apiConf } from '@conf/api.conf';
import { STColumn, STComponent } from '@delon/abc/st';
import { SFComponent, SFDateWidgetSchema, SFSchema, SFTagWidgetSchema, SFTextWidgetSchema, SFUISchema } from '@delon/form';
import { ModalHelper, _HttpClient } from '@delon/theme';
import { STColumn } from '@delon/abc/st';
import { _HttpClient } from '@delon/theme';
import { NzImageService } from 'ng-zorro-antd/image';
import { NzMessageService } from 'ng-zorro-antd/message';
import { NzModalService } from 'ng-zorro-antd/modal';
import { Subject } from 'rxjs';
import { ImageViewComponent } from 'src/app/shared/components/imagelist';
import { UsermanageService } from '../../../services/usercenter.service';
import { debounceTime } from 'rxjs/operators';
@Component({
selector: 'app-usercenter-components-driver-detail',

View File

@ -46,12 +46,12 @@
<li nz-menu-item (click)="creat()" acl [acl-ability]="['USERCENTER-FREIGHT-LIST-save']">
新增企业
</li>
<li nz-menu-item (click)="editPartner()" acl [acl-ability]="['USERCENTER-FREIGHT-LIST-partner']">
<!-- <li nz-menu-item (click)="editPartner()" acl [acl-ability]="['USERCENTER-FREIGHT-LIST-partner']">
修改合伙人
</li>
<li nz-menu-item (click)="editSale()" acl [acl-ability]="['USERCENTER-FREIGHT-LIST-sale']">
修改渠道销售
</li>
</li> -->
</ul>
</nz-dropdown-menu>
</div>

View File

@ -469,14 +469,14 @@ export class FreightComponentsListComponent extends BasicTableComponent implemen
text: '分配客服<br>',
click: item => this.showService(item)
},
{
text: '修改合伙人',
click: item => this.editPartner(item)
},
{
text: '修改渠道销售',
click: item => this.editSale(item)
}
// {
// text: '修改合伙人',
// click: item => this.editPartner(item)
// },
// {
// text: '修改渠道销售',
// click: item => this.editSale(item)
// }
]
}
];