|
|
|
@ -4,50 +4,21 @@
|
|
|
|
|
<inputView ref="inputView" :type="labelData.label" :parentVal="value" @getInputChange="inputChange" />
|
|
|
|
|
</template>
|
|
|
|
|
<template v-else-if="labelData.type == 'date'">
|
|
|
|
|
<datePickerView
|
|
|
|
|
ref="datePickerView"
|
|
|
|
|
class="date-picker"
|
|
|
|
|
:parentVal="value"
|
|
|
|
|
type="etd"
|
|
|
|
|
format="YYYY-MM-DD"
|
|
|
|
|
@dateChange="dateChangeFun"
|
|
|
|
|
></datePickerView>
|
|
|
|
|
<datePickerView ref="datePickerView" class="date-picker" :parentVal="value" type="etd" format="YYYY-MM-DD"
|
|
|
|
|
@dateChange="dateChangeFun"></datePickerView>
|
|
|
|
|
</template>
|
|
|
|
|
<template v-else-if="labelData.type == 'dateRange'">
|
|
|
|
|
<div class="picker-box" style="display: flex; padding-right: 2px">
|
|
|
|
|
<a-date-picker
|
|
|
|
|
style="min-width: 30px; flex: 1"
|
|
|
|
|
v-model="startValue"
|
|
|
|
|
:disabled-date="disabledStartDate"
|
|
|
|
|
format="YYYY-MM-DD"
|
|
|
|
|
suffixIcon=" "
|
|
|
|
|
placeholder="开始时间"
|
|
|
|
|
@openChange="handleStartOpenChange"
|
|
|
|
|
/>
|
|
|
|
|
<a-date-picker style="min-width: 30px; flex: 1" v-model="startValue" :disabled-date="disabledStartDate"
|
|
|
|
|
format="YYYY-MM-DD" suffixIcon=" " placeholder="开始时间" @openChange="handleStartOpenChange" />
|
|
|
|
|
<span style="margin: 0 4px">-</span>
|
|
|
|
|
<a-date-picker
|
|
|
|
|
style="min-width: 30px; flex: 1"
|
|
|
|
|
v-model="endValue"
|
|
|
|
|
:disabled-date="disabledEndDate"
|
|
|
|
|
format="YYYY-MM-DD"
|
|
|
|
|
placeholder="结束时间"
|
|
|
|
|
suffixIcon=" "
|
|
|
|
|
:open="endOpen"
|
|
|
|
|
@openChange="handleEndOpenChange"
|
|
|
|
|
/>
|
|
|
|
|
<a-date-picker style="min-width: 30px; flex: 1" v-model="endValue" :disabled-date="disabledEndDate"
|
|
|
|
|
format="YYYY-MM-DD" placeholder="结束时间" suffixIcon=" " :open="endOpen" @openChange="handleEndOpenChange" />
|
|
|
|
|
</div>
|
|
|
|
|
</template>
|
|
|
|
|
<template v-else-if="labelData.type == 'select'">
|
|
|
|
|
<a-select
|
|
|
|
|
size="small"
|
|
|
|
|
style="margin-top: 7px"
|
|
|
|
|
v-model="value"
|
|
|
|
|
show-search
|
|
|
|
|
:dropdownMatchSelectWidth="false"
|
|
|
|
|
:filter-option="filterOption"
|
|
|
|
|
@change="debounce(handleSelectChange, 300, $event)"
|
|
|
|
|
@focus="getSelectFirst"
|
|
|
|
|
>
|
|
|
|
|
<a-select size="small" style="margin-top: 7px" v-model="value" show-search :dropdownMatchSelectWidth="false"
|
|
|
|
|
:filter-option="filterOption" @change="debounce(handleSelectChange, 300, $event)" @focus="getSelectFirst">
|
|
|
|
|
<template v-if="['CARRIER', 'YARDID', 'ISSUETYPE', 'CARGOID'].includes(labelData.label)">
|
|
|
|
|
<a-select-option v-for="(sitem, sindex) in dataList" :key="sindex">
|
|
|
|
|
{{ sitem[labelData.showLabel2] }}/ {{ sitem[labelData.showLabel] }}
|
|
|
|
@ -66,18 +37,9 @@
|
|
|
|
|
</a-select>
|
|
|
|
|
</template>
|
|
|
|
|
<template v-else-if="labelData.type == 'complete'">
|
|
|
|
|
<auto-complete
|
|
|
|
|
size="small"
|
|
|
|
|
:allowClear="true"
|
|
|
|
|
class="customer-input"
|
|
|
|
|
:dropdown-match-select-width="false"
|
|
|
|
|
:dropdown-style="{ width: '200px' }"
|
|
|
|
|
v-model="value"
|
|
|
|
|
option-label-prop="label"
|
|
|
|
|
@select="completeSelect"
|
|
|
|
|
@focus="completeChangeFirst"
|
|
|
|
|
@change="debounce(completeChange, 300, $event)"
|
|
|
|
|
>
|
|
|
|
|
<auto-complete size="small" :allowClear="true" class="customer-input" :dropdown-match-select-width="false"
|
|
|
|
|
:dropdown-style="{ width: '200px' }" v-model="value" option-label-prop="label" @select="completeSelect"
|
|
|
|
|
@focus="completeChangeFirst" @change="debounce(completeChange, 300, $event)">
|
|
|
|
|
<!-- <template slot="dataSource" v-if="labelData.label === 'VESSEL'">
|
|
|
|
|
<a-select-option v-for="(item, index) in dataSourceList" :key="index" :value="item[labelData.showLabel]">
|
|
|
|
|
<div class="vessel-label">
|
|
|
|
@ -87,12 +49,8 @@
|
|
|
|
|
</a-select-option>
|
|
|
|
|
</template>-->
|
|
|
|
|
<template slot="dataSource">
|
|
|
|
|
<a-select-option
|
|
|
|
|
v-for="(item, index) in dataSourceList"
|
|
|
|
|
:key="`${index}-${item[labelData.showLabel]}`"
|
|
|
|
|
:value="`${index}-${item[labelData.showLabel]}`"
|
|
|
|
|
:label="item[labelData.showLabel]"
|
|
|
|
|
>
|
|
|
|
|
<a-select-option v-for="(item, index) in dataSourceList" :key="`${index}-${item[labelData.showLabel]}`"
|
|
|
|
|
:value="`${index}-${item[labelData.showLabel]}`" :label="item[labelData.showLabel]">
|
|
|
|
|
<div>
|
|
|
|
|
<div class="title">{{ item[labelData.showLabel] }}</div>
|
|
|
|
|
</div>
|
|
|
|
@ -286,10 +244,7 @@ export default {
|
|
|
|
|
'NOBILL',
|
|
|
|
|
'CARGOID',
|
|
|
|
|
'zhanCangFlag',
|
|
|
|
|
'status',
|
|
|
|
|
'taskCategory',
|
|
|
|
|
'taskSource',
|
|
|
|
|
'taskType'
|
|
|
|
|
'OP'
|
|
|
|
|
].includes(this.labelData.label)
|
|
|
|
|
) {
|
|
|
|
|
this.dataList = this.emnuData(this.labelData.label)
|
|
|
|
@ -303,6 +258,7 @@ export default {
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
emnuData(type) {
|
|
|
|
|
console.log(this.bookingInitData.opInitList)
|
|
|
|
|
switch (type) {
|
|
|
|
|
case 'LINENAME':
|
|
|
|
|
return this.lineList
|
|
|
|
@ -322,14 +278,8 @@ export default {
|
|
|
|
|
return this.labelData.data
|
|
|
|
|
case 'zhanCangFlag':
|
|
|
|
|
return this.labelData.data
|
|
|
|
|
case 'status':
|
|
|
|
|
return this.labelData.data
|
|
|
|
|
case 'taskCategory':
|
|
|
|
|
return this.labelData.data
|
|
|
|
|
case 'taskSource':
|
|
|
|
|
return this.labelData.data
|
|
|
|
|
case 'taskType':
|
|
|
|
|
return this.labelData.data
|
|
|
|
|
case 'OP':
|
|
|
|
|
return this.bookingInitData.opInitList
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
completeSelect(value) {
|
|
|
|
@ -362,7 +312,6 @@ export default {
|
|
|
|
|
'FORWARDER',
|
|
|
|
|
'SALE',
|
|
|
|
|
'CUSTSERVICE',
|
|
|
|
|
'OP',
|
|
|
|
|
'DOC',
|
|
|
|
|
'ROUTE',
|
|
|
|
|
'PAYABLEAT',
|
|
|
|
@ -413,10 +362,13 @@ export default {
|
|
|
|
|
.aa {
|
|
|
|
|
transform: scaleY(0.8);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/deep/ .ant-select-selection__clear {
|
|
|
|
|
margin-top: 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.vessel-label {
|
|
|
|
|
|
|
|
|
|
// border-bottom:1px solid #eee;
|
|
|
|
|
.title {
|
|
|
|
|
height: 28px;
|
|
|
|
@ -427,6 +379,7 @@ export default {
|
|
|
|
|
border-bottom: 1px dashed #ddd;
|
|
|
|
|
margin-bottom: 4px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.voyno,
|
|
|
|
|
.etd {
|
|
|
|
|
height: 22px;
|
|
|
|
@ -439,10 +392,12 @@ export default {
|
|
|
|
|
/deep/.ant-calendar-picker-input {
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/deep/.ant-calendar-range-picker-input {
|
|
|
|
|
height: 24px !important;
|
|
|
|
|
line-height: 24px !important;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/deep/ .ant-input {
|
|
|
|
|
height: 24px !important;
|
|
|
|
|
}
|
|
|
|
|