fix bug
This commit is contained in:
@ -4,15 +4,12 @@
|
||||
* @Author : Shiming
|
||||
* @Date : 2022-01-12 10:52:50
|
||||
* @LastEditors : Shiming
|
||||
* @LastEditTime : 2022-01-18 17:27:53
|
||||
* @LastEditTime : 2022-03-02 14:27:20
|
||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\supply-management\\components\\choose-famifiar\\choose-famifiar.component.html
|
||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||
-->
|
||||
|
||||
<button nz-button nzType="primary" style="margin-bottom: 24px" (click)="add()"><i nz-icon nzType="plus"></i>添加司机</button>
|
||||
<!-- <button nz-button nzType="primary" style="margin-bottom: 24px" (click)="add()"><i nz-icon nzType="plus"></i>添加司机</button> -->
|
||||
<!-- 搜索区 -->
|
||||
<div nz-row nzGutter="8">
|
||||
<div nz-col [nzSpan]="12">
|
||||
<div nz-row nzGutter="8">
|
||||
<div nz-col [nzSpan]="18">
|
||||
<sf #sf [ui]="ui" [schema]="schema" [button]="'none'"></sf>
|
||||
@ -22,30 +19,20 @@
|
||||
<button nz-button (click)="resetSF()">重置</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div nz-row nzGutter="8">
|
||||
<div nz-col [nzSpan]="12">
|
||||
<!-- 数据列表 -->
|
||||
<st
|
||||
#st
|
||||
*ngIf="columns"
|
||||
[bordered]="true"
|
||||
[data]="service.$api_getList_card"
|
||||
[columns]="columns"
|
||||
size="small"
|
||||
<st #st [bordered]="true" [data]="service.$api_getListCars" [columns]="columns" size="small"
|
||||
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }"
|
||||
[res]="{ reName: { list: 'data.records', total: 'data.total' }, process: reqProcess }"
|
||||
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
|
||||
[loading]="service.http.loading"
|
||||
[widthMode]="{ type: 'strict' }"
|
||||
[scroll]="{ x: '600px' }"
|
||||
style="margin-top: 22px; width: 100%"
|
||||
>
|
||||
[loadingDelay]="500" [loading]="service.http.loading" [widthMode]="{ type: 'strict' }" [scroll]="{ x: '600px' }"
|
||||
style="margin-top: 22px">
|
||||
<ng-template st-row="userCarLicenseDesensitizationVOList" let-item let-index="index">
|
||||
<nz-select [(ngModel)]="item.default" (ngModelChange)="carChange($event, item)" style="width: 100%">
|
||||
<nz-option nzValue="" nzLabel="不限"></nz-option>
|
||||
<nz-option [nzValue]="cart" [nzLabel]="cart.carNo" *ngFor="let cart of item.userCarLicenseDesensitizationVOList"> </nz-option>
|
||||
<nz-option [nzValue]="cart" [nzLabel]="cart.carNo"
|
||||
*ngFor="let cart of item.userCarLicenseDesensitizationVOList"> </nz-option>
|
||||
</nz-select>
|
||||
</ng-template>
|
||||
</st>
|
||||
@ -53,21 +40,18 @@
|
||||
<div nz-col [nzSpan]="12">
|
||||
<!-- 选中列表 -->
|
||||
<div>已选择{{ st2Data.length }}位司机</div>
|
||||
<st
|
||||
#st2
|
||||
*ngIf="columns2"
|
||||
[bordered]="true"
|
||||
[data]="st2Data"
|
||||
[columns]="columns2"
|
||||
size="small"
|
||||
[page]="{ show: false }"
|
||||
[scroll]="{ x: '600px', y: '300px' }"
|
||||
style="width: 100%"
|
||||
>
|
||||
<st #st2 [bordered]="true" [data]="st2Data" [columns]="columns2" size="small"
|
||||
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }"
|
||||
[res]="{ reName: { list: 'data.records', total: 'data.total' } }"
|
||||
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
|
||||
[loadingDelay]="500" [loading]="service.http.loading" [widthMode]="{ type: 'strict' }" [scroll]="{ x: '600px' }">
|
||||
<ng-template st-row="captain" let-item let-index="index">
|
||||
<span>{{ item.captainName }} {{ item.captainPhone }}</span>
|
||||
<a (click)="setCaptain(item, index)">设置</a>
|
||||
</ng-template>
|
||||
<ng-template st-row="defaultCar" let-item let-index="index">
|
||||
{{item.default?.carNo}}
|
||||
</ng-template>
|
||||
</st>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -3,7 +3,7 @@ import { ActivatedRoute, Router } from '@angular/router';
|
||||
import { STChange, STColumn, STComponent, STData, STRequestOptions } from '@delon/abc/st';
|
||||
import { SFComponent, SFSchema, SFSelectWidgetSchema, SFUISchema } from '@delon/form';
|
||||
import { ModalHelper } from '@delon/theme';
|
||||
import { processSingleSort } from '@shared';
|
||||
import { EAEnvironmentService, processSingleSort } from '@shared';
|
||||
import { NzDrawerRef, NzDrawerService } from 'ng-zorro-antd/drawer';
|
||||
import { NzModalRef, NzModalService } from 'ng-zorro-antd/modal';
|
||||
import { SupplyManagementAddDriversComponent } from 'src/app/routes/supply-management/components/add-drivers/add-drivers.component';
|
||||
@ -37,7 +37,7 @@ export class PublishGoodsChooseFamifiarComponent implements OnInit {
|
||||
submitUrl = '';
|
||||
|
||||
@Input()
|
||||
submitParams = {};
|
||||
submitParams:any;
|
||||
|
||||
constructor(
|
||||
private modal: NzModalRef,
|
||||
@ -47,7 +47,7 @@ export class PublishGoodsChooseFamifiarComponent implements OnInit {
|
||||
public service: SupplyManagementService,
|
||||
private modalService: NzModalService,
|
||||
private modalHelper: ModalHelper,
|
||||
private cdr: ChangeDetectorRef
|
||||
private envSrv: EAEnvironmentService
|
||||
) { }
|
||||
|
||||
/**
|
||||
@ -61,26 +61,23 @@ export class PublishGoodsChooseFamifiarComponent implements OnInit {
|
||||
}
|
||||
ngOnInit() {
|
||||
this.initSF();
|
||||
|
||||
setTimeout(() => {
|
||||
this.initST();
|
||||
this.initST2();
|
||||
}, 200);
|
||||
}
|
||||
|
||||
initSF() {
|
||||
this.schema = {
|
||||
properties: {
|
||||
name: {
|
||||
nameOrPhone: {
|
||||
type: 'string',
|
||||
title: '',
|
||||
title: '承运司机',
|
||||
ui: {
|
||||
placeholder: '请输入司机姓名/手机号'
|
||||
}
|
||||
},
|
||||
name2: {
|
||||
carNo: {
|
||||
type: 'string',
|
||||
title: '',
|
||||
title: '车牌号',
|
||||
ui: {
|
||||
placeholder: '请输入车牌号'
|
||||
}
|
||||
@ -98,13 +95,11 @@ export class PublishGoodsChooseFamifiarComponent implements OnInit {
|
||||
this.columns = [
|
||||
{
|
||||
title: '司机姓名',
|
||||
index: 'name',
|
||||
width: 120
|
||||
index: 'name'
|
||||
},
|
||||
{
|
||||
title: '手机号',
|
||||
index: 'telephone',
|
||||
width: 120
|
||||
index: 'telephone'
|
||||
},
|
||||
{
|
||||
title: '指定车辆',
|
||||
@ -115,7 +110,6 @@ export class PublishGoodsChooseFamifiarComponent implements OnInit {
|
||||
title: '状态',
|
||||
className: 'text-center',
|
||||
index: 'certificationStatus',
|
||||
width: 120,
|
||||
type: 'badge',
|
||||
badge: {
|
||||
'-1': { text: '未提交', color: 'default' },
|
||||
@ -127,12 +121,11 @@ export class PublishGoodsChooseFamifiarComponent implements OnInit {
|
||||
{
|
||||
title: '操作',
|
||||
className: 'text-center',
|
||||
width: 80,
|
||||
buttons: [
|
||||
{
|
||||
text: '选择',
|
||||
iif: item => item.showChoose != false,
|
||||
click: (_record, _modal, _instance) => this.choose(_record),
|
||||
click: (_record, _modal, _instance) => this.verifyVechicleStatus(_record),
|
||||
iifBehavior: 'disabled'
|
||||
}
|
||||
]
|
||||
@ -145,7 +138,7 @@ export class PublishGoodsChooseFamifiarComponent implements OnInit {
|
||||
{
|
||||
title: '司机姓名',
|
||||
index: 'name',
|
||||
width: 120
|
||||
width: '90px'
|
||||
},
|
||||
{
|
||||
title: '手机号',
|
||||
@ -155,17 +148,17 @@ export class PublishGoodsChooseFamifiarComponent implements OnInit {
|
||||
{
|
||||
title: '车队长',
|
||||
render: 'captain',
|
||||
width: '100px'
|
||||
width: '200px'
|
||||
},
|
||||
{
|
||||
title: '指定车辆',
|
||||
index: 'carNo',
|
||||
render: 'defaultCar',
|
||||
width: '130px'
|
||||
},
|
||||
{
|
||||
title: '操作',
|
||||
className: 'text-center',
|
||||
width: 80,
|
||||
width: '90px',
|
||||
buttons: [
|
||||
{
|
||||
text: '移除',
|
||||
@ -198,6 +191,23 @@ export class PublishGoodsChooseFamifiarComponent implements OnInit {
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验司机是否能设置车队长
|
||||
* @param item 当前对象
|
||||
*/
|
||||
verifyCanSetCarCaptain(item: any, index: any) {
|
||||
this.service.request(this.service.$api_get_sys_config, [{ itemKey: 'sys.config.shipper.setCarCaptain', businessId: this.envSrv.env.enterpriseId }]).subscribe(res => {
|
||||
if (res && res.length > 0) {
|
||||
const { itemValue } = res[0];
|
||||
if (itemValue !== '1') {
|
||||
this.service.msgSrv.error('不可设置车队长!');
|
||||
return;
|
||||
}
|
||||
this.setCaptain(item, index);
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
//设置车队长
|
||||
setCaptain(record: STData, index: any) {
|
||||
this.modalHelper
|
||||
@ -260,5 +270,53 @@ export class PublishGoodsChooseFamifiarComponent implements OnInit {
|
||||
});
|
||||
}
|
||||
|
||||
carChange(event: any, item: STData) {}
|
||||
carChange(event: any, item: STData) {
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 验证车辆的状态
|
||||
*/
|
||||
verifyVechicleStatus(_record: STData) {
|
||||
const { carId, appUserId: driverId, captainAppUserId: carCaptainId } = _record;
|
||||
const carInfo: any = { carId, driverId, carCaptainId };
|
||||
const goodsInfoList = this.submitParams?.goodsInfoList;
|
||||
this.service.request(this.service.$api_verify_vehicle_status, { ...carInfo, goodsInfoList }).subscribe((res: any) => {
|
||||
if (res) {
|
||||
const { title, alert, subContent, content } = res;
|
||||
switch (alert) {
|
||||
case 'Error':
|
||||
this.error(title, content, subContent);
|
||||
break;
|
||||
case 'Warn':
|
||||
this.showConfirm(_record, title, content, subContent);
|
||||
break;
|
||||
case 'Success':
|
||||
this.choose(_record);
|
||||
break;
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
error(title: string, content: string, subContent: string): void {
|
||||
this.modalService.error({
|
||||
nzTitle: title,
|
||||
nzContent: `<span class="text-error-dark">${content ? content : ''}</span><span class="text-grey-dark">${subContent ? subContent : ''}</span>`,
|
||||
nzOkText: '知道了'
|
||||
});
|
||||
}
|
||||
|
||||
showConfirm(_record: STData, title: string, content: string, subContent: string): void {
|
||||
this.modalService.confirm({
|
||||
nzTitle: title,
|
||||
nzContent: `<span class="text-error-dark">${content ? content : ''}</span><span class="text-grey-dark">${subContent ? subContent : ''}</span>`,
|
||||
nzOkText: '继续',
|
||||
nzCancelText: '取消',
|
||||
nzOnOk: () => {
|
||||
this.choose(_record);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,3 +1,13 @@
|
||||
/*
|
||||
* @Description :
|
||||
* @Version : 1.0
|
||||
* @Author : Shiming
|
||||
* @Date : 2021-12-06 15:17:52
|
||||
* @LastEditors : Shiming
|
||||
* @LastEditTime : 2022-03-02 14:29:12
|
||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\supply-management\\components\\choose-famifiar\\set-captain\\set-captain.component.ts
|
||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||
*/
|
||||
import { AfterViewInit, ChangeDetectorRef, Component, OnChanges, OnInit, ViewChild } from '@angular/core';
|
||||
import { ActivatedRoute } from '@angular/router';
|
||||
import { SFComponent, SFSchema, SFSchemaEnumType, SFUISchema } from '@delon/form';
|
||||
@ -16,7 +26,7 @@ export class PublishchooseFamifiarSetCaptainComponent implements OnInit {
|
||||
|
||||
i: any;
|
||||
|
||||
constructor(public http: _HttpClient, private cdr: ChangeDetectorRef, private route: ActivatedRoute) {}
|
||||
constructor(public http: _HttpClient, private cdr: ChangeDetectorRef, private route: ActivatedRoute, private modal: NzModalRef,) {}
|
||||
|
||||
ngOnInit(): void {
|
||||
this.initSF();
|
||||
@ -24,12 +34,11 @@ export class PublishchooseFamifiarSetCaptainComponent implements OnInit {
|
||||
initSF() {
|
||||
this.schema = {
|
||||
properties: {
|
||||
name: {
|
||||
captainPhone: {
|
||||
type: 'string',
|
||||
title: '车队长手机号'
|
||||
}
|
||||
},
|
||||
required: ['name']
|
||||
};
|
||||
this.ui = {
|
||||
'*': {
|
||||
@ -39,6 +48,6 @@ export class PublishchooseFamifiarSetCaptainComponent implements OnInit {
|
||||
};
|
||||
}
|
||||
|
||||
close() {}
|
||||
save() {}
|
||||
close() {this.modal.close()}
|
||||
save() {this.modal.close(this.sf.value.captainPhone)}
|
||||
}
|
||||
|
||||
@ -4,7 +4,7 @@
|
||||
* @Author : Shiming
|
||||
* @Date : 2021-12-03 11:10:14
|
||||
* @LastEditors : Shiming
|
||||
* @LastEditTime : 2022-03-02 10:10:18
|
||||
* @LastEditTime : 2022-03-02 14:27:18
|
||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\supply-management\\services\\supply-management.service.ts
|
||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||
*/
|
||||
@ -165,4 +165,6 @@ export class SupplyManagementService extends BaseService {
|
||||
public $api_getNetworkTransporter = '/api/mdc/cuc/enterpriseInfo/operate/getNetworkTransporter';
|
||||
$api_verify_vehicle_status = `/api/sdc/goodsResourceShipper/saveVerify`;// 发布货源校验司机/车队长的状态
|
||||
$api_get_sys_config = `/api/mdc/pbc/sysConfigItem/findConfigValues`; // 根据项key、业务id获取配置信息
|
||||
// 获取指派熟车列表
|
||||
$api_getListCars = '/api/mdc/cuc/enterpriseVehicle/getPracticeCarList';
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user