This commit is contained in:
weiyu
2022-05-07 11:31:59 +08:00
parent 26fbbb9330
commit 3229f82754
4 changed files with 296 additions and 240 deletions

View File

@ -106,7 +106,7 @@
<ng-template sf-template="freightPrice" let-i let-ui="ui">
<nz-input-group [nzAddOnAfter]="addOnAfterTemplate">
<nz-input-number [nzMax]="99999" [nzMin]="0" nzPlaceHolder="请输入" type="number" [ngModel]="i.value"
(ngModelChange)="i.setValue($event)" [nzPrecision]="2" style="width: 100%;"></nz-input-number>
(ngModelChange)="i.setValue($event)" [nzPrecision]="2" style="width: 100%;border-radius: 4px 0 0 4px;"></nz-input-number>
</nz-input-group>
<ng-template #addOnAfterTemplate>
<nz-select [ngModel]="sf4.value.freightType" (ngModelChange)="sf4.setValue('/freightType', $event)">
@ -135,19 +135,19 @@
<ng-template sf-template="weight" let-i let-ui="ui">
<nz-input-group [nzAddOnAfter]="''">
<nz-input-number placeholder="总重量,必填" [ngModel]="i.value" (ngModelChange)="i.setValue($event)" [nzMin]="1"
style="width: 100%"></nz-input-number>
style="width: 100%;border-radius: 4px 0 0 4px;"></nz-input-number>
</nz-input-group>
</ng-template>
<ng-template sf-template="volume" let-i let-ui="ui">
<nz-input-group [nzAddOnAfter]="''">
<nz-input-number placeholder="总体积" [ngModel]="i.value" (ngModelChange)="i.setValue($event)" [nzMin]="1"
style="width: 100%"></nz-input-number>
style="width: 100%;border-radius: 4px 0 0 4px;"></nz-input-number>
</nz-input-group>
</ng-template>
<ng-template sf-template="number" let-i let-ui="ui">
<nz-input-group [nzAddOnAfter]="''">
<nz-input-number placeholder="总车次" [ngModel]="i.value" (ngModelChange)="i.setValue($event)" [nzMin]="1"
style="width: 100%"></nz-input-number>
style="width: 100%;border-radius: 4px 0 0 4px;"></nz-input-number>
</nz-input-group>
</ng-template>
</sf>

View File

@ -5,127 +5,93 @@
</button>
</ng-template>
</page-header-wrapper>
<nz-card>
<div class="custom-style">
<nz-card>
<div class="card-title">货源单设置</div>
<sf #sf1 [schema]="schema1" [button]="'none'" [ui]="ui1" [formData]="sf1data">
<ng-template sf-template="enterpriseInfoName" let-i let-ui="ui"> {{ i.value }} </ng-template>
</sf>
</nz-card>
</nz-card>
<nz-card>
<div class="card-title">装卸货信息<span class="tip-font">预计公里数:{{ totalDistance }}km,预计行程耗时:{{ totalTime }}小时</span></div
>
<nz-card>
<div class="card-title">装卸货信息<span class="tip-font">预计公里数:<em>{{ totalDistance }}km</em>,预计行程耗时:<em>{{ totalTime }}小时</em></span>
</div>
<form #ngForm="ngForm" nz-form role="form">
<div nz-row [nzGutter]="24">
<div nz-col [nzSpan]="10">
<div *ngFor="let data1 of startInfo; let idx = index">
<nz-form-item>
<nz-form-label nzRequired>装货地</nz-form-label>
<nz-form-label [nzSpan]="4" nzRequired>装货地</nz-form-label>
<nz-form-control [nzErrorTip]="'请输入装货地'">
<div class="align-center">
<nz-input-group [nzSuffix]="endInconTemp1">
<input
nz-input
[(ngModel)]="data1.detailedAddress"
(click)="openMap('start', idx)"
name="startDetailedAddress{{ idx }}"
placeholder="请输入装货地"
required
readonly="true"
/>
<input nz-input [(ngModel)]="data1.detailedAddress" (click)="openMap('start', idx)"
name="startDetailedAddress{{ idx }}" placeholder="请输入装货地" required readonly="true" />
</nz-input-group>
</div>
</nz-form-control>
</nz-form-item>
<nz-form-item >
<nz-form-label nzRequired>联系人</nz-form-label>
<div style="display: flex;width: 86%">
<nz-form-control [nzErrorTip]="'请输入联系人姓名'">
<input
nz-input
[(ngModel)]="data1.appUserName"
name="startAppUserName{{ idx }}"
maxlength="30"
placeholder="请输入联系人姓名"
required
/>
<nz-form-item>
<nz-form-label [nzSpan]="4" nzRequired>联系人</nz-form-label>
<div nz-col [nzSpan]="20">
<div nz-row [nzGutter]="12">
<nz-form-control [nzSpan]="12" [nzErrorTip]="'请输入联系人姓名'">
<input nz-input [(ngModel)]="data1.appUserName" formControlName="loadName{{ idx }}"
name="loadName{{ idx }}" maxlength="30" placeholder="请输入联系人姓名" />
</nz-form-control>
<nz-form-control [nzErrorTip]="'请输入联系人电话'">
<input
style="margin-left: 12px"
nz-input
[(ngModel)]="data1.contractTelephone"
maxlength="11"
name="startContractTelephone{{ idx }}"
placeholder="请输入联系人电话"
required
/>
<nz-form-control [nzSpan]="12" [nzErrorTip]="'请输入联系人电话'">
<input nz-input [(ngModel)]="data1.contractTelephone" maxlength="11"
formControlName="loadPhone{{ idx }}" name="loadPhone{{ idx }}" placeholder="请输入联系人电话" />
</nz-form-control>
</div>
</div>
</nz-form-item>
</div>
</div>
<div nz-col [nzSpan]="4">
<div style="display: flex; justify-content: center">
<span class="swap-icon" (click)="swapAddress()"><i nz-icon nzType="swap"
nzTheme="outline"></i></span>
<div class="icon-wrap">
<span class="swap-icon" (click)="swapAddress()"></span>
</div>
</div>
<div nz-col [nzSpan]="10">
<div *ngFor="let data2 of endInfo; let idx = index">
<nz-form-item>
<nz-form-label nzRequired>卸货地</nz-form-label>
<nz-form-label [nzSpan]="4" nzRequired>卸货地</nz-form-label>
<nz-form-control [nzErrorTip]="'请输入卸货地'">
<div class="align-center">
<nz-input-group [nzSuffix]="endInconTemp1">
<input
nz-input
[(ngModel)]="data2.detailedAddress"
(click)="openMap('end', idx)"
name="endDetailedAddress{{ idx }}"
placeholder="请输入卸货地"
required
readonly="true"
/>
<input nz-input [(ngModel)]="data2.detailedAddress" (click)="openMap('end', idx)"
name="endDetailedAddress{{ idx }}" placeholder="请输入卸货地" required readonly="true" />
</nz-input-group>
</div>
</nz-form-control>
</nz-form-item>
<nz-form-item>
<nz-form-label nzRequired>联系人</nz-form-label>
<div style="display: flex;width: 86%">
<nz-form-control [nzErrorTip]="'请输入联系人姓名'">
<input
nz-input
[(ngModel)]="data2.appUserName"
maxlength="30"
name="endAppUserName{{ idx }}"
placeholder="请输入联系人姓名"
required
/>
<nz-form-label [nzSpan]="4" nzRequired>联系人</nz-form-label>
<div nz-col [nzSpan]="20">
<div nz-row [nzGutter]="12">
<nz-form-control [nzSpan]="12" [nzErrorTip]="'请输入联系人姓名'">
<input nz-input [(ngModel)]="data2.appUserName" maxlength="30" formControlName="unloadName{{ idx }}"
name="unloadAddress{{ idx }}" placeholder="请输入联系人姓名" />
</nz-form-control>
<nz-form-control [nzErrorTip]="'请输入联系人电话'">
<input
style="margin-left: 12px"
nz-input
[(ngModel)]="data2.contractTelephone"
name="endUnloadPhone{{ idx }}"
maxlength="11"
placeholder="请输入联系人电话"
required
/>
<nz-form-control [nzSpan]="12" [nzErrorTip]="'请输入联系人电话'">
<input nz-input [(ngModel)]="data2.contractTelephone"
formControlName="unloadPhone{{ idx }}" name="unloadAddress{{ idx }}" maxlength="11"
placeholder="请输入联系人电话" />
</nz-form-control>
</div>
</div>
</nz-form-item>
</div>
</div>
</div>
<ng-template #endInconTemp1><i nz-icon nzType="environment" nzTheme="outline"></i></ng-template>
</form>
</nz-card>
</nz-card>
<nz-card>
<nz-card>
<div class="card-title">货物信息</div>
<div nz-row>
<div nz-col nzSpan="24">
@ -133,12 +99,13 @@
<sf #sf4 [schema]="schema4" [button]="'none'" [ui]="ui4" [formData]="sf4data">
<ng-template sf-template="freightPrice" let-i let-ui="ui">
<nz-input-group [nzAddOnAfter]="addOnAfterTemplate">
<nz-input-number [nzMax]="99999" [nzMin] ="0" nzPlaceHolder="请输入" type="number" [ngModel]="i.value"
(ngModelChange)="i.setValue($event)" [nzPrecision]="2" style="width: 100%;"></nz-input-number>
<nz-input-number [nzMax]="99999" [nzMin]="0" nzPlaceHolder="请输入" type="number" [ngModel]="i.value"
(ngModelChange)="i.setValue($event)" [nzPrecision]="2" style="width: 100%;border-radius: 4px 0 0 4px;"></nz-input-number>
</nz-input-group>
<ng-template #addOnAfterTemplate>
<nz-select [ngModel]="sf4.value.freightType" (ngModelChange)="sf4.setValue('/freightType', $event)">
<nz-option [nzValue]="item.value" [nzLabel]="item.label" *ngFor="let item of freightTypeOptions"> </nz-option>
<nz-option [nzValue]="item.value" [nzLabel]="item.label" *ngFor="let item of freightTypeOptions">
</nz-option>
</nz-select>
</ng-template>
</ng-template>
@ -149,9 +116,8 @@
<nz-option nzLabel="抹除小数" nzValue="2"></nz-option>
<nz-option nzLabel="抹除个数" nzValue="3"></nz-option>
</nz-select>
<span style="padding: 0 12px" nz-tooltip [nzTooltipTitle]="template2" nzTooltipPlacement="bottom"
><i nz-icon nzType="exclamation-circle" nzTheme="outline" style="color: #1890ff"></i
></span>
<span style="padding: 0 12px" nz-tooltip [nzTooltipTitle]="template2" nzTooltipPlacement="bottom"><i
nz-icon nzType="exclamation-circle" nzTheme="outline" style="color: #1890ff"></i></span>
<ng-template #template2>
<p>例如 付司机运费 = 重量*单价 = 999.99</p>
<p>保留小数,即 999.99</p>
@ -162,61 +128,40 @@
</ng-template>
<ng-template sf-template="weight" let-i let-ui="ui">
<nz-input-group [nzAddOnAfter]="''">
<nz-input-number
placeholder="总重量,必填"
[ngModel]="i.value"
(ngModelChange)="i.setValue($event)"
[nzMin]="1"
style="width: 100%"
></nz-input-number>
<nz-input-number placeholder="总重量,必填" [ngModel]="i.value" (ngModelChange)="i.setValue($event)" [nzMin]="1"
style="width: 100%;border-radius: 4px 0 0 4px;"></nz-input-number>
</nz-input-group>
</ng-template>
<ng-template sf-template="volume" let-i let-ui="ui">
<nz-input-group [nzAddOnAfter]="''">
<nz-input-number
placeholder="总体积"
[ngModel]="i.value"
(ngModelChange)="i.setValue($event)"
[nzMin]="1"
style="width: 100%"
></nz-input-number>
<nz-input-number placeholder="总体积" [ngModel]="i.value" (ngModelChange)="i.setValue($event)" [nzMin]="1"
style="width: 100%;border-radius: 4px 0 0 4px;"></nz-input-number>
</nz-input-group>
</ng-template>
<ng-template sf-template="number" let-i let-ui="ui">
<nz-input-group [nzAddOnAfter]="''">
<nz-input-number
placeholder="总车次"
[ngModel]="i.value"
(ngModelChange)="i.setValue($event)"
[nzMin]="1"
style="width: 100%"
></nz-input-number>
<nz-input-number placeholder="总车次" [ngModel]="i.value" (ngModelChange)="i.setValue($event)" [nzMin]="1"
style="width: 100%;border-radius: 4px 0 0 4px;"></nz-input-number>
</nz-input-group>
</ng-template>
</sf>
</div>
</div>
</nz-card>
</nz-card>
<nz-card>
<nz-card>
<div class="card-title">补充信息</div>
<div nz-row>
<div nz-col nzSpan="12">
<div nz-col nzSpan="24">
<sf #sf6 [schema]="schema6" [button]="'none'" [ui]="ui6" [formData]="sf6data">
<ng-template sf-template="paymentDays" let-i let-ui="ui">
<div nz-row>
<div class="align-center" >
<div nz-col nzSpan="12">
<nz-input-number
[ngModel]="i.value"
[nzMin]="1"
[nzMax]="30"
[nzStep]="1"
(ngModelChange)="i.setValue($event)"
nzPlaceHolder="请输入1-30"
></nz-input-number>
<div class="align-center">
<div nz-col nzSpan="14">
<nz-input-number [ngModel]="i.value" [nzMin]="1" [nzMax]="30" [nzStep]="1"
(ngModelChange)="i.setValue($event)" nzPlaceHolder="请输入1-30"></nz-input-number>
</div>
<div nz-col nzSpan="12">
<div nz-col nzSpan="10">
<span>&nbsp;天内支付运费</span>
</div>
</div>
@ -225,13 +170,17 @@
</sf>
</div>
</div>
</nz-card>
</nz-card>
<nz-card>
<nz-card class="btn-wrap">
<div class="align-center">
<!-- <button nz-button nzType="primary" (click)="choose()">取消</button> -->
<button nz-button nzType="primary" (click)="submitConfirm('qrcode')" acl [acl-ability]="['SUPPLY-BULK-RELEASE-QRCode ']">生成二维码</button>
<button nz-button nzType="primary" style="margin-left: 48px" (click)="submitConfirm('assign')" acl [acl-ability]="['SUPPLY-BULK-RELEASE-consignBulkAssign']">指派熟车</button>
<button nz-button nzType="primary" style="margin-left: 48px" (click)="submitConfirm('publish')" acl [acl-ability]="['SUPPLY-BULK-RELEASE-consignBulk']">司机抢单</button>
<button nz-button nzType="primary" (click)="submitConfirm('qrcode')" acl
[acl-ability]="['SUPPLY-BULK-RELEASE-QRCode ']">生成二维码</button>
<button nz-button nzType="primary" style="margin-left: 24px" (click)="submitConfirm('assign')" acl
[acl-ability]="['SUPPLY-BULK-RELEASE-consignBulkAssign']">指派熟车</button>
<button nz-button nzType="primary" style="margin-left: 24px" (click)="submitConfirm('publish')" acl
[acl-ability]="['SUPPLY-BULK-RELEASE-consignBulk']">司机抢单</button>
</div>
</nz-card>
</nz-card>
</div>

View File

@ -46,3 +46,100 @@ input[type='number']::-webkit-outer-spin-button {
margin: 0;
-webkit-appearance: none;
}
.custom-style {
::ng-deep {
.ant-card {
margin-bottom: 0;
}
.ant-card-body {
padding-bottom: 0;
}
.ant-card-bordered {
border: 0 none;
}
.card-title {
display: flex;
align-items: center;
>span {
margin-left: 8px;
font-size: 14px;
em {
font-style: normal;
color: #E60012;
}
}
&::before {
content: '';
display: inline-block;
width: 2px;
height: 16px;
margin-right: 10px;
background: #E60012;
}
}
.ant-btn-dangerous {
border-radius: 4px;
color: #CF3834;
border-color: rgba(207, 56, 52, 0.5);
}
.icon-wrap {
display: flex;
justify-content: center;
height: 100%;
}
.swap-icon {
background: url('/assets/images/frame.png') no-repeat 50% 50%;
cursor: pointer;
}
.ant-input-affix-wrapper,
.ant-input,
.ant-picker,
.ant-select-selector,
.ant-input-number-input,
.ant-input-number {
border-radius: 4px ;
}
.ant-input-group-addon {
border-radius: 0 4px 4px 0;
}
.align-center {
.ant-btn {
height: 40px;
padding: 0 23px;
font-size: 16px;
border-radius: 3px;
}
}
.ant-select-arrow {
transform: scaleX(1.5) translateY(2px);
color: rgb(153,153,153);
font-size: 8px;
}
.ant-picker-suffix {
color: #333;
}
.btn-wrap {
margin-top: 20px;
padding-bottom: 20px;
}
.ant-alert {
padding: 6px 16px;
border-radius: 2px;
font-size: 14px;
}
.fc {
color: #f5222d;
}
}
}

View File

@ -223,11 +223,8 @@ export class SupplyManagementBulkReleasePublishComponent implements OnInit {
};
this.ui1 = {
'*': {
spanLabelFixed: 110,
grid: { span: 12 }
},
$enterpriseInfoName: {
grid: { span: 24 }
spanLabelFixed: 115,
grid: { span: 8 }
}
};
}
@ -303,8 +300,14 @@ export class SupplyManagementBulkReleasePublishComponent implements OnInit {
};
this.ui3 = {
'*': {
spanLabelFixed: 90,
spanLabelFixed: 115,
grid: { span: 12 }
},
$goodsNameId: {
spanLabelFixed: 10
},
$goodsTips: {
grid: { span: 24 }
}
};
}
@ -411,33 +414,37 @@ export class SupplyManagementBulkReleasePublishComponent implements OnInit {
};
this.ui4 = {
'*': {
spanLabelFixed: 90,
grid: { span: 24 }
spanLabelFixed: 115,
grid: { span: 12 }
},
$freightPrice: {
grid: { span: 8 }
},
$rule: {
spanLabelFixed: 10,
grid: { span: 8 }
},
$settlementBasis: {
spanLabelFixed: 10,
grid: { span: 8 }
},
$weight: {
grid: { lg: 8, md: 12, sm: 12, xs: 24 }
grid: { span: 4 }
},
$volume: {
grid: { lg: 8, md: 12, sm: 12, xs: 24 }
spanLabelFixed: 10,
grid: { span: 4 }
},
$number: {
grid: { lg: 8, md: 12, sm: 12, xs: 24 }
spanLabelFixed: 10,
grid: { span: 4 }
},
$carModel: {
spanLabelFixed: 120,
grid: { span: 8 }
grid: { span: 6 }
},
$carLength: {
grid: { span: 8 }
spanLabelFixed: 10,
grid: { span: 6 }
}
};
}
@ -527,7 +534,7 @@ export class SupplyManagementBulkReleasePublishComponent implements OnInit {
ui: {
widget: 'textarea',
placeholder: '请输入',
autosize: { minRows: 3, maxRows: 3 }
autosize: { minRows: 1, maxRows: 1 }
} as SFTextareaWidgetSchema
}
},
@ -535,7 +542,10 @@ export class SupplyManagementBulkReleasePublishComponent implements OnInit {
};
this.ui6 = {
'*': {
spanLabelFixed: 90,
spanLabelFixed: 115,
grid: { span: 8 }
},
$remarks: {
grid: { span: 24 }
}
};