车辆对接

This commit is contained in:
wangshiming
2022-01-10 13:32:17 +08:00
parent 11c5ab47b8
commit a0c7db29a4
22 changed files with 600 additions and 142 deletions

View File

@ -0,0 +1,63 @@
<!--
* @Author: your name
* @Date: 2021-12-07 15:57:49
* @LastEditTime: 2021-12-07 16:25:09
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: \tms-obc-web\src\app\routes\contract-management\components\contract-list\contract-list.component.html
-->
<nz-card>
<div nz-row nzGutter="8">
<!-- 查询字段小于或等于3个时不显示伸缩按钮 -->
<div nz-col nzSpan="24" *ngIf="queryFieldCount <= 4">
<sf #sf [schema]="schema" [ui]="ui" [mode]="'search'" [disabled]="!sf?.valid" [loading]="service.http.loading"
(formSubmit)="st?.load(1)" (formReset)="resetSF()"></sf>
</div>
<!-- 查询字段大于3个时根据展开状态调整布局 -->
<ng-container>
<div nz-col [nzSpan]="_$expand ? 24 : 18">
<sf #sf [schema]="schema" [ui]="ui" [compact]="true" [button]="'none'"></sf>
</div>
<div nz-col [nzSpan]="_$expand ? 24 : 6" [class.text-right]="_$expand">
<button nz-button nzType="primary" [disabled]="!sf.valid" [nzLoading]="service.http.loading"
(click)="st?.load(1)">查询</button>
<button nz-button (click)="resetSF()">重置</button>
<button nz-button nzType="link" (click)="expandToggle()">
{{ !_$expand ? '展开' : '收起' }}
<i nz-icon [nzType]="!_$expand ? 'down' : 'up'"></i>
</button>
</div>
</ng-container>
</div>
</nz-card>
<nz-card class="content-box" nzBordered>
<div style="position: relative">
<nz-alert
nzType="info"
[nzMessage]="'当前共' + st?.total + '行记录已选择' + selectedRows.length + ''"
nzShowIcon
[ngStyle]="{ margin: '0 0 1rem 0' }"
>
</nz-alert>
</div>
<st #st [data]="url" [columns]="columns"
[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] }"
[loading]="service.http.loading" [scroll]="{ x:'1200px',y: '370px' }" (change)="stChange($event)"></st>
</nz-card>
<ng-template #auditModal>
<div nz-row nzGutter="8">
<div nz-col nzSpan="24" se-container [labelWidth]="80">
<se [col]="1" label="备注">
<textarea nz-input rows="3" placeholder="同意可以不用填写原因 ,拒绝必须说明原因"
style="width: 325px;margin-left: 14px;"></textarea>
</se>
</div>
</div>
</ng-template>

View File

@ -0,0 +1,35 @@
:host::ng-deep {
.search-box {
.ant-card-body {
padding-bottom: 18px;
}
}
.content-box {
.ant-card-body {
padding-top: 0;
}
}
nz-range-picker {
width: 100%;
}
.ant-tabs-tab-btn {
padding-right: 16px;
padding-left : 16px;
}
}
.expend-options {
margin-top: 0;
}
@media (min-width: 1200px) {
.expend-options {
z-index : -99;
margin-top: -40px;
}
}

View File

@ -0,0 +1,239 @@
import { Component, OnInit, ViewChild } from '@angular/core';
import { Router } from '@angular/router';
import { STComponent, STColumn, STChange } from '@delon/abc/st';
import { SFComponent, SFSchema, SFDateWidgetSchema, SFUISchema } from '@delon/form';
import { NzModalService } from 'ng-zorro-antd/modal';
import { ContractManagementService } from '../../services/contract-management.service';
@Component({
selector: 'app-contract-management-contract-frame',
templateUrl: './contract-frame.component.html',
styleUrls: ['./contract-frame.component.less']
})
export class ContractManagementFrameComponent implements OnInit {
url = `/rule?_allow_anonymous=true`;
@ViewChild('st', { static: true })
st!: STComponent;
@ViewChild('sf', { static: false })
sf!: SFComponent;
@ViewChild('auditModal', { static: false })
auditModal!: any;
schema: SFSchema = {};
columns: STColumn[] = [];
ui: SFUISchema = {};
_$expand = false;
reqParams = {};
selectedRows: any[] = [];
constructor(public service: ContractManagementService, private nzModalService: NzModalService, private router: Router) {}
ngOnInit(): void {
this.initST()
this.initSF()
}
/**
* 初始化数据列表
*/
initST() {
this.columns = [
{ title: '', type: 'checkbox', width: '50px', className: 'text-center' },
{
title: '合同编号',
width: '100px',
className: 'text-center',
render: 'goodsId'
},
{
title: '合同类型',
width: '100px',
className: 'text-center',
},
{ title: '托运人', index: 'externalSn', width: '120px', className: 'text-center' },
{ title: '承运人', index: 'linkUrl', width: '120px', className: 'text-center' },
{
title: '业务单号',
className: 'text-center',
width: '120px',
},
{
title: '装货地',
className: 'text-center',
width: '120px',
},
{
title: '卸货地',
className: 'text-center',
width: '120px',
},
{
title: '货物名称',
className: 'text-center',
width: '120px',
},
{
title: '重量/体积',
className: 'text-center',
width: '120px',
},
{
title: '金额',
className: 'text-center',
width: '120px',
},
{
title: '签署日期',
className: 'text-center',
width: '120px',
render: 'feiong'
},
{
title: '交易时间',
className: 'text-center',
width: '120px',
},
// {
// title: '操作',
// fixed: 'right',
// width: '200px',
// className: 'text-left',
// buttons: [
// {
// text: '查看评价',
// // click: (_record) => this.viewEvaluate(_record),
// },
// ],
// },
];
}
/**
* 初始化查询表单
*/
initSF() {
this.schema = {
properties: {
_$expand: { type: 'boolean', ui: { hidden: true } },
no: {
type: 'string',
title: '用户名',
},
no2: {
type: 'string',
title: '托运人'
},
no1: {
type: 'string',
title: '承运人'
},
createTime: {
title: '签署日期',
type: 'string',
ui: {
widget: 'date',
mode: 'range',
format: 'yyyy-MM-dd',
visibleIf: {
_$expand: (value: boolean) => value,
},
} as SFDateWidgetSchema,
},
appId: {
type: 'string',
title: '合同类型',
ui: {
widget: 'select',
placeholder: '请选择',
visibleIf: {
_$expand: (value: boolean) => value,
},
allowClear: true,
// asyncData: () => this.getCatalogueMember(),
},
},
},
type: 'object',
};
this.ui = { '*': { spanLabelFixed: 110, grid: { span: 8, gutter: 4 } } };
}
/**
* 查询字段个数
*/
get queryFieldCount(): number {
return Object.keys(this.schema?.properties || {}).length;
}
stChange(e: STChange): void {
switch (e.type) {
case 'checkbox':
this.selectedRows = e.checkbox!;
break;
case 'filter':
this.st.load();
break;
}
}
approval(): void {}
add(): void {}
routeTo(item: any) {
this.router.navigate(['/ticket/invoice-requested-detail/1']);
}
auditAction(item: any) {
const modal = this.nzModalService.create({
nzTitle: '审核',
nzContent: this.auditModal,
nzFooter: [
{
label: '拒绝',
type: 'default',
onClick: () => {
modal.destroy();
}
},
{
label: '通过',
type: 'primary',
onClick: () => {
modal.destroy();
}
}
]
});
modal.afterClose.subscribe(res => {
this.st.load();
});
}
showReason(item: any) {
const modal = this.nzModalService.create({
nzTitle: '查看原因',
nzContent: '运单数据异常暂时无法开票请联系客服400-xxxx-xxxx',
nzFooter: [
{
label: '关闭',
type: 'primary',
onClick: () => {
modal.destroy();
}
}
]
});
}
/**
* 重置表单
*/
resetSF() {
this.sf.reset();
this._$expand = false;
}
/**
* 伸缩查询条件
*/
expandToggle(): void {
this._$expand = !this._$expand;
this.sf?.setValue('/_$expand', this._$expand);
}
}

View File

@ -1,15 +1,11 @@
<!--
* @Author: your name
* @Date: 2021-12-07 15:57:49
* @LastEditTime: 2021-12-07 16:25:09
* @LastEditTime: 2022-01-07 18:05:23
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: \tms-obc-web\src\app\routes\contract-management\components\contract-list\contract-list.component.html
-->
<page-header-wrapper [title]="'合同列表'">
</page-header-wrapper>
<nz-card>
<div nz-row nzGutter="8">
<!-- 查询字段小于或等于3个时不显示伸缩按钮 -->
@ -21,7 +17,13 @@
<!-- 查询字段大于3个时根据展开状态调整布局 -->
<ng-container>
<div nz-col [nzSpan]="_$expand ? 24 : 18">
<sf #sf [schema]="schema" [ui]="ui" [compact]="true" [button]="'none'"></sf>
<sf #sf [schema]="schema" [ui]="ui" [compact]="true" [button]="'none'">
<ng-template sf-template="signTime" let-me let-ui="ui" let-schema="schema">
<!-- <input placeholder="请输入1-30" type="number" [ngModel]="sf.value.description3" style="width: 200px;" nz-input />
<span> 天内支付运费</span> -->
<nz-range-picker [nzShowTime]="true" [(ngModel)]="sf.value.signTime" ></nz-range-picker>
</ng-template>
</sf>
</div>
<div nz-col [nzSpan]="_$expand ? 24 : 6" [class.text-right]="_$expand">
<button nz-button nzType="primary" [disabled]="!sf.valid" [nzLoading]="service.http.loading"
@ -48,11 +50,16 @@
</nz-alert>
</div>
<st #st [data]="url" [columns]="columns"
<st #st [data]="service.$api_listDetailed_page" [columns]="columns"
[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] }"
[loading]="service.http.loading" [scroll]="{ x:'1200px',y: '370px' }" (change)="stChange($event)"></st>
[loading]="service.http.loading" [scroll]="{ x:'1200px',y: '370px' }" (change)="stChange($event)">
<ng-template st-row="contractCode" let-item let-index="index">
<a [routerLink]="'/supply-management/bulk-detail/'+item.id">{{item?.contractCode}}</a>
</ng-template>
</st>
</nz-card>
<ng-template #auditModal>

View File

@ -1,14 +1,16 @@
import { Component, OnInit, ViewChild } from '@angular/core';
import { Router } from '@angular/router';
import { STComponent, STColumn, STChange } from '@delon/abc/st';
import { SFComponent, SFSchema, SFDateWidgetSchema, SFUISchema } from '@delon/form';
import { SFComponent, SFSchema, SFDateWidgetSchema, SFUISchema, SFSelectWidgetSchema } from '@delon/form';
import { NzModalService } from 'ng-zorro-antd/modal';
import { ContractManagementService } from '../../services/contract-management.service';
import { DatePipe } from '@angular/common';
@Component({
selector: 'app-contract-management-contract-list',
templateUrl: './contract-list.component.html',
styleUrls: ['./contract-list.component.less']
styleUrls: ['./contract-list.component.less'],
providers: [DatePipe]
})
export class ContractManagementContractListComponent implements OnInit {
url = `/rule?_allow_anonymous=true`;
@ -22,10 +24,32 @@ export class ContractManagementContractListComponent implements OnInit {
columns: STColumn[] = [];
ui: SFUISchema = {};
_$expand = false;
reqParams = {};
/**
* 查询参数
*/
get reqParams() {
const params = {
...this.sf?.value,
}
delete params.signTime;
delete params._$expand;
if(this.datePipe.transform(this.sf?.value?.signTime?.[0], 'yyyy-MM-dd HH:mm:ss') && this.datePipe.transform(this.sf?.value?.signTime?.[1], 'yyyy-MM-dd HH:mm:ss')) {
params.signTime = {
start: this.datePipe.transform(this.sf?.value?.signTime?.[0], 'yyyy-MM-dd HH:mm:ss'),
end: this.datePipe.transform(this.sf?.value?.signTime?.[1], 'yyyy-MM-dd HH:mm:ss'),
}
}
return {
...params
};
}
selectedRows: any[] = [];
constructor(public service: ContractManagementService, private nzModalService: NzModalService, private router: Router) {}
constructor(
public service: ContractManagementService,
private nzModalService: NzModalService,
private router: Router,
private datePipe: DatePipe,
) {}
ngOnInit(): void {
this.initST()
@ -36,73 +60,49 @@ export class ContractManagementContractListComponent implements OnInit {
*/
initST() {
this.columns = [
{ title: '', type: 'checkbox', width: '50px', className: 'text-center' },
{
title: '合同编号',
width: '100px',
className: 'text-center',
render: 'goodsId'
render: 'contractCode'
},
{
title: '合同类型',
width: '100px',
className: 'text-center',
index:'contractType'
},
{ title: '托运人', index: 'externalSn', width: '120px', className: 'text-center' },
{ title: '承运人', index: 'linkUrl', width: '120px', className: 'text-center' },
{ title: '托运人', index: 'shipperName', width: '120px', className: 'text-center' },
{ title: '承运人', index: 'carrierName', width: '120px', className: 'text-center' },
{
title: '业务单号',
className: 'text-center',
width: '120px',
},
{
title: '装货地',
className: 'text-center',
width: '120px',
},
{
title: '卸货地',
className: 'text-center',
width: '120px',
},
{
title: '货物名称',
className: 'text-center',
width: '120px',
},
{
title: '重量/体积',
className: 'text-center',
width: '120px',
},
{
title: '金额',
className: 'text-center',
width: '120px',
index: 'businessCode'
},
{
title: '签署日期',
className: 'text-center',
width: '120px',
render: 'feiong'
index: 'signTime'
},
{
title: '交易时间',
title: '状态',
className: 'text-center',
width: '120px',
type: 'badge',
index: 'esignFlowStatus',
badge: {
'0': { text: '未发起', color: 'default' },
'1': { text: '待签章', color: 'default' },
'2': { text: '已生效', color: 'success' },
'3': { text: '已撤销', color: 'warning' },
'4': { text: '已作废', color: 'warning' },
'5': { text: '已过期', color: 'warning' },
'7': { text: '已拒签', color: 'warning' },
},
},
// {
// title: '操作',
// fixed: 'right',
// width: '200px',
// className: 'text-left',
// buttons: [
// {
// text: '查看评价',
// // click: (_record) => this.viewEvaluate(_record),
// },
// ],
// },
];
}
/**
@ -112,42 +112,59 @@ export class ContractManagementContractListComponent implements OnInit {
this.schema = {
properties: {
_$expand: { type: 'boolean', ui: { hidden: true } },
no: {
contractCode: {
type: 'string',
title: '用户名',
title: '合同编号',
},
no2: {
businessCode: {
type: 'string',
title: '业务单号'
},
shipperName: {
type: 'string',
title: '托运人'
},
no1: {
carrierName: {
type: 'string',
title: '承运人'
title: '承运人',
ui: {
visibleIf: {
_$expand: (value: boolean) => value,
},
}
},
createTime: {
documentType: {
title: '单据类型',
type: 'string',
default: '',
ui: {
widget: 'dict-select',
containsAllLable: true,
params: { dictKey: 'contract:document:type' },
containAllLable:true,
visibleIf: {
_$expand: (value: boolean) => value,
},
} as SFSelectWidgetSchema,
},
// signTime: {
// title: '签署日期',
// type: 'string',
// ui: {
// widget: 'date',
// mode: 'range',
// format: 'yyyy-MM-dd',
// visibleIf: {
// _$expand: (value: boolean) => value,
// },
// } as SFDateWidgetSchema,
// },
signTime: {
title: '签署日期',
type: 'string',
ui: {
widget: 'date',
mode: 'range',
format: 'yyyy-MM-dd',
visibleIf: {
_$expand: (value: boolean) => value,
},
} as SFDateWidgetSchema,
},
appId: {
type: 'string',
title: '合同类型',
ui: {
widget: 'select',
placeholder: '请选择',
visibleIf: {
_$expand: (value: boolean) => value,
},
allowClear: true,
// asyncData: () => this.getCatalogueMember(),
},
widget: 'custom'
}
},
},
type: 'object',

View File

@ -0,0 +1,20 @@
<!--
* @Author: your name
* @Date: 2022-01-07 13:27:10
* @LastEditTime: 2022-01-07 13:50:55
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: \tms-obc-web\src\app\routes\contract-management\components\index\index.component.html
-->
<page-header-wrapper title="合同管理" [tab]="tpTab">
</page-header-wrapper>
<ng-template #tpTab>
<nz-tabset [(nzSelectedIndex)]="selectedIndex">
<nz-tab nzTitle="明细合同">
<app-contract-management-contract-list></app-contract-management-contract-list>
</nz-tab>
<nz-tab nzTitle="框架合同">
<app-contract-management-contract-frame></app-contract-management-contract-frame>
</nz-tab>
</nz-tabset>
</ng-template>

View File

@ -0,0 +1,24 @@
import { waitForAsync, ComponentFixture, TestBed } from '@angular/core/testing';
import { SupplyManagementIndexComponent } from './index.component';
describe('SupplyManagementIndexComponent', () => {
let component: SupplyManagementIndexComponent;
let fixture: ComponentFixture<SupplyManagementIndexComponent>;
beforeEach(waitForAsync(() => {
TestBed.configureTestingModule({
declarations: [ SupplyManagementIndexComponent ]
})
.compileComponents();
}));
beforeEach(() => {
fixture = TestBed.createComponent(SupplyManagementIndexComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
});

View File

@ -0,0 +1,26 @@
/*
* @Author: your name
* @Date: 2022-01-07 13:27:10
* @LastEditTime: 2022-01-07 13:28:59
* @LastEditors: your name
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: \tms-obc-web\src\app\routes\contract-management\components\index\index.component.ts
*/
import { Component, OnInit, ViewChild } from '@angular/core';
import { STColumn, STComponent } from '@delon/abc/st';
import { SFSchema } from '@delon/form';
import { ModalHelper, _HttpClient } from '@delon/theme';
@Component({
selector: 'app-supply-management-index',
templateUrl: './index.component.html',
})
export class ContractManagementIndexComponent implements OnInit {
selectedIndex = 0;
constructor(private http: _HttpClient, private modal: ModalHelper) { }
ngOnInit(): void { }
}

View File

@ -11,9 +11,10 @@ import { RouterModule, Routes } from '@angular/router';
import { ContractManagementContractListComponent } from './components/contract-list/contract-list.component';
import { UserCenterComponentsDriverDetailComponent } from './components/contract-template-detail/contract-template-detail.component';
import { OrderManagementTemplateComponent } from './components/contract-template/contract-template.component';
import { ContractManagementIndexComponent } from './components/index/index.component';
import { ContractManagementPolicyComponent } from './components/policy/policy.component';
const routes: Routes = [
{ path: 'list', component: ContractManagementContractListComponent },
{ path: 'index', component: ContractManagementIndexComponent },
{ path: 'template', component: OrderManagementTemplateComponent },
{ path: 'template/detail/:id', component: UserCenterComponentsDriverDetailComponent },
{ path: 'policy', component: ContractManagementPolicyComponent }

View File

@ -1,7 +1,7 @@
/*
* @Author: your name
* @Date: 2021-12-07 15:57:49
* @LastEditTime: 2022-01-05 11:05:11
* @LastEditTime: 2022-01-07 13:50:14
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: \tms-obc-web\src\app\routes\contract-management\contract-management.module.ts
@ -14,12 +14,16 @@ import { ContractManagementContractListComponent } from './components/contract-l
import { ContractManagementPolicyComponent } from './components/policy/policy.component';
import { OrderManagementTemplateComponent } from './components/contract-template/contract-template.component';
import { UserCenterComponentsDriverDetailComponent } from './components/contract-template-detail/contract-template-detail.component';
import { ContractManagementIndexComponent } from './components/index/index.component';
import { ContractManagementFrameComponent } from './components/contract-frame/contract-frame.component';
const COMPONENTS: any = [
ContractManagementContractListComponent,
ContractManagementPolicyComponent,
OrderManagementTemplateComponent,
UserCenterComponentsDriverDetailComponent
UserCenterComponentsDriverDetailComponent,
ContractManagementIndexComponent,
ContractManagementFrameComponent
];
const NOTROUTECOMPONENTS: any = [];
@NgModule({

View File

@ -1,7 +1,7 @@
/*
* @Author: your name
* @Date: 2022-01-04 21:05:49
* @LastEditTime: 2022-01-06 10:15:44
* @LastEditTime: 2022-01-07 16:33:31
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: \tms-obc-web\src\app\routes\contract-management\services\contract-management.service.ts
@ -25,6 +25,11 @@ export class ContractManagementService extends BaseService {
$api_get_contractTemplate = `/api/sdc/contractTemplate/get`;
// 删除合同模板
$api_deletebatch_contractTemplate = `/api/sdc/contractTemplate/deletebatch`;
// 查询明细合同
$api_listDetailed_page = `/api/sdc/contract/listDetailed/page`;
// 查询框架合同
$api_listFrame_page = `/api/sdc/contract/listFrame/page`;
constructor(public injector: Injector) {
super(injector);
}

View File

@ -29,6 +29,7 @@ export class SupplyManagementVehicleAssignedCarComponent implements OnInit {
@ViewChild('st') st!: STComponent;
@ViewChild('sf', { static: false }) sf!: SFComponent;
status: string = 'anew';
type: any;
url = ''; // 请求的api地址
params: any = {}; // 传进来的参数
cardBADGE: STColumnBadge | any = {
@ -99,6 +100,7 @@ export class SupplyManagementVehicleAssignedCarComponent implements OnInit {
}
ngOnInit(): void {
console.log(this.type)
}
dataProcess(data: STData[]): STData[] {

View File

@ -213,9 +213,9 @@
</nz-card>
<nz-card>
<div class="align-center">
<!-- <button nz-button nzType="primary" (click)="chooseFamifiar()">生成二维码</button>
<button nz-button nzType="primary" style="margin-left: 48px" (click)="chooseFamifiar()">指派熟车</button> -->
<button nz-button nzType="primary" (click)="choose()">取消</button>
<button nz-button nzType="primary" style="margin-left: 48px" (click)="submit()">司机抢单</button>
<!-- <button nz-button nzType="primary" (click)="chooseFamifiar()">生成二维码</button> -->
<button nz-button nzType="primary" style="margin-left: 48px" (click)="submit('assign')">指派熟车</button>
<!-- <button nz-button nzType="primary" (click)="choose()">取消</button> -->
<button nz-button nzType="primary" style="margin-left: 48px" (click)="submit('publish')">司机抢单</button>
</div>
</nz-card>

View File

@ -530,14 +530,34 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
}
//指派熟车
chooseFamifiar() {
this.modalService.create({
//指派熟车
chooseFamifiar(item: any) {
const modalRef = this.modalService.create({
nzTitle: '指派熟车',
nzContent: PublishGoodsChooseFamifiarComponent,
nzWidth: 1300
nzComponentParams: {
submitParams: item,
submitUrl: this.service.$api_save_bulk_assign
},
nzWidth: 1300,
});
modalRef.afterClose.subscribe(result => {
if (result) {
this.openFinishPage(result);
}
});
}
submit(): void {
// 打开下单完成页面
openFinishPage(resourceObj: any = null) {
this.modalService.create({
nzTitle: '',
nzContent: PublishSuccessComponent,
nzWidth: 900,
nzFooter: null,
nzComponentParams: { type: 'bulk' }
});
}
submit(submitType?: string): void {
console.log(this.startInfo)
if(typeof(this.validateForm1.value.modifyTime) !== 'string' ) {
var c = new Date(this.validateForm1.value.modifyTime);
@ -563,7 +583,12 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
]
}
params.freightPrice = this.totalFees
console.log(this.sf7.value)
if(submitType) {
if (submitType == 'assign') {
this.chooseFamifiar(params);
return;
}
}
console.log(params)
if(this.PageStatus === '大宗修改') {
this.requests(this.service.$api_set_bulkModify, params);

View File

@ -174,9 +174,8 @@
<nz-card>
<div class="align-center">
<button nz-button nzType="primary" (click)="choose()">取消</button>
<button nz-button nzType="primary" (click)="submit('assign')">生成二维码</button>
<!-- <button nz-button nzType="primary" (click)="choose()">取消</button> -->
<!-- <button nz-button nzType="primary" (click)="submit('assign')">生成二维码</button> -->
<button nz-button nzType="primary" (click)="submit('assign')">指派熟车</button>
<button nz-button nzType="primary" style="margin-left: 48px" (click)="submit('publish')">司机抢单</button>
</div>

View File

@ -446,7 +446,7 @@ export class SupplyManagementBulkReleasePublishComponent implements OnInit {
nzContent: PublishGoodsChooseFamifiarComponent,
nzComponentParams: {
submitParams: item,
submitUrl: this.service.$api_save_bulk_assign
submitUrl: this.service.$api_save_consignBulkAssign
},
nzWidth: 1300
});

View File

@ -706,7 +706,9 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
nzComponentParams: {
status: 'new',
url: this.service.$api_save_assign_whole,
params: item
params: item,
type: 'next'
},
nzFooter: null
});
@ -732,7 +734,8 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
nzTitle: '运输协议',
nzContent: TranAgreementComponent,
nzWidth: 900,
nzFooter: null
nzFooter: null,
nzComponentParams: { type: 'next' }
});
modalRef.afterClose.subscribe(result => {
if (result) {

View File

@ -639,7 +639,7 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
nzWidth: 1200,
nzComponentParams: {
status: 'new',
url: this.service.$api_save_assign_whole,
url: this.service.$api_save_consignWholeAssign,
params: item
},
nzFooter: null

View File

@ -1,3 +1,11 @@
/*
* @Author: your name
* @Date: 2022-01-06 15:01:40
* @LastEditTime: 2022-01-10 11:20:22
* @LastEditors: your name
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: \tms-obc-web\src\app\routes\supply-management\components\tran-agreement\tran-agreement.component.ts
*/
import { Component } from '@angular/core';
import { NzModalRef } from 'ng-zorro-antd/modal';
@ -8,7 +16,7 @@ import { NzModalRef } from 'ng-zorro-antd/modal';
})
export class TranAgreementComponent {
type: any;
constructor(private modal: NzModalRef) {
}

View File

@ -1,7 +1,7 @@
/*
* @Author: your name
* @Date: 2021-12-03 11:10:14
* @LastEditTime: 2022-01-06 19:16:43
* @LastEditTime: 2022-01-10 13:20:04
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: \tms-obc-web\src\app\routes\supply-management\services\supply-management.service.ts
@ -65,10 +65,14 @@ export class SupplyManagementService extends BaseService {
$api_save_assign_vehicle = `/api/sdc/goodsResourceShipper/reAssignWhole`;// 货主端大宗货源重新指派
$api_save_assign_bulk = `/api/sdc/goodsResourceShipper/reAssignBulk`; // 货主端大宗货源指派熟车
// 货主端大宗货源指派熟车
$api_save_assign_whole = `/api/sdc/goodsResourceShipper/saveWholeAssign`;
// 整车再下一单指派熟车
$api_save_assign_whole = `/api/sdc/goodsResourceOperate/saveAnotherWholeOrderAssign`;
// 代发整车货源指派熟车
$api_save_consignWholeAssign = `/api/sdc/goodsResourceOperate/consignWholeAssign`;
// 货主端大宗货源指派熟车
$api_save_bulk_assign = `/api/sdc/goodsResourceShipper/saveBulkAssign`;
$api_save_bulk_assign = `/api/sdc/goodsResourceOperate/saveAnotherBulkOrderAssign`;
// 代发大宗货源指派熟车
$api_save_consignBulkAssign = `/api/sdc/goodsResourceOperate/consignBulkAssign`;
$api_get_has_assigned_car_list = `/api/sdc/goodsResourceShipper/getCarDriverIdsByResourceId`;// 大宗货源根据货源id获取司机和车辆的id集合

View File

@ -26,9 +26,10 @@ export class WaybillManagementAbnormalAppearComponent implements OnInit {
editId = false;
columns: STColumn[] = [
{ title: '客户名称', index: 'customerName' },
{ title: '客户简称', index: 'customerShortName' },
{ title: '客户编码', index: 'customerCode' },
{ title: '运单编号', index: 'customerName' },
{ title: '司机', index: 'customerShortName' },
{ title: '异常类型', index: 'customerCode' },
{ title: '异常内容', index: 'customerCode' },
{
title: '操作',
buttons: [
@ -51,7 +52,6 @@ export class WaybillManagementAbnormalAppearComponent implements OnInit {
ngOnInit(): void {
this.initSF()
this.initSFFre()
}
stChange(e: STChange): void {
@ -83,50 +83,26 @@ export class WaybillManagementAbnormalAppearComponent implements OnInit {
_$expand: { type: 'boolean', ui: { hidden: true } },
customerName: {
type: 'string',
title: '客户名称',
title: '运单编号',
ui: { placeholder: '请输入' }
},
customerShortName: {
type: 'string',
title: '客户简称',
title: '司机',
ui: { placeholder: '请输入' }
},
customerCode: {
type: 'string',
title: '客户编码',
title: '异常类型',
ui: { placeholder: '请输入',
visibleIf: {
_$expand: (value: boolean) => value
} }
}
},
}
};
this.ui = { '*': { spanLabelFixed: 110, grid: { span: 8, gutter: 4 } } };
}
initSFFre() {
this.addSchema = {
properties: {
customerName: {
type: 'string',
title: '客户名称',
ui: { placeholder: '请输入' }
},
customerShortName: {
type: 'string',
title: '客户简称',
ui: { placeholder: '请输入' }
},
customerCode: {
type: 'string',
title: '客户编码',
ui: { placeholder: '请输入' }
},
},
required: ['customerName', 'customerShortName', 'customerCode']
};
this.ui2 = { '*': { spanLabelFixed: 120, grid: { span: 24 } } };
}
roleAction(value: any,item?: any) {
// this.service.request(this.service.$api_get_crmCustomer, {id: value.id}).subscribe((res: any) => {

View File

@ -367,8 +367,8 @@
"link": "/contract-management/policy"
},
{
"text": "合同列表",
"link": "/contract-management/list"
"text": "合同管理",
"link": "/contract-management/index"
},
{
"text": "合同模板",