mirror of
https://gitlab.com/CIEFWorldwideSdnBhd/shipping-portal.git
synced 2026-08-19 04:24:12 +00:00
update address extra fields
This commit is contained in:
@@ -112,14 +112,14 @@ class UpdateAddressLogic extends AbstractControllerLogic
|
|||||||
}
|
}
|
||||||
|
|
||||||
$addressExtraFields = [
|
$addressExtraFields = [
|
||||||
'property_type' => $request->input('property_type'),
|
'property_type' => $request->input('property_type'),
|
||||||
'tools_required_unload' => $request->input('tools_required_unload'),
|
'additional_request' => $request->input('additional_request'),
|
||||||
'pickup_time_from' => $request->input('pickup_time_from'),
|
'receive_goods_working_hours' => $request->input('receive_goods_working_hours'),
|
||||||
'pickup_time_to' => $request->input('pickup_time_to'),
|
'receive_goods_after_hours' => $request->input('receive_goods_after_hours'),
|
||||||
'receive_goods_after_hours' => $request->input('receive_goods_after_hours'),
|
'receive_goods_on_saturday' => $request->input('receive_goods_on_saturday'),
|
||||||
'receive_goods_on_weekend' => $request->input('receive_goods_on_weekend'),
|
|
||||||
];
|
];
|
||||||
|
|
||||||
|
$address->addressExtraFields()->delete();
|
||||||
$addressExtraFieldsObject = new RemarkObject(json_encode($addressExtraFields), Auth()->user()->id, RemarkTypes::ADDRESS_EXTRA_COLUMNS);
|
$addressExtraFieldsObject = new RemarkObject(json_encode($addressExtraFields), Auth()->user()->id, RemarkTypes::ADDRESS_EXTRA_COLUMNS);
|
||||||
$this->createRemarkProcessor->execute($address, $addressExtraFieldsObject);
|
$this->createRemarkProcessor->execute($address, $addressExtraFieldsObject);
|
||||||
|
|
||||||
|
|||||||
@@ -128,50 +128,51 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row m-b-15">
|
<div class="row m-b-15">
|
||||||
<div class="col-12 col-md pr-md-1 pb-3 pb-md-0">
|
<div class="col">
|
||||||
<small class="text-center d-block">Please choose a value between 9:00 AM and 4:00 PM only.</small>
|
|
||||||
<validation-wrapper-component :validator="$v.parameters.pickup_time_from">
|
|
||||||
<label>收货时间从 Available Hours From</label>
|
|
||||||
<input type="time" class="form-control" name="pickup_time" v-model="parameters.pickup_time_from">
|
|
||||||
</validation-wrapper-component>
|
|
||||||
</div>
|
|
||||||
<div class="col-12 col-md pl-md-1">
|
|
||||||
<small class="text-center d-block">Please choose a value between 3:00 PM and 8:00 PM only.</small>
|
|
||||||
<validation-wrapper-component :validator="$v.parameters.pickup_time_to">
|
|
||||||
<label>最晚收货时间 Available Hours To</label>
|
|
||||||
<input type="time" class="form-control" name="latest_pickup_time" v-model="parameters.pickup_time_to">
|
|
||||||
</validation-wrapper-component>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="row m-b-15">
|
|
||||||
<div class="col-12 col-md pr-md-1 pb-3 pb-md-0">
|
|
||||||
<div class="row justify-content-center m-t-10 m-b-10" @click="parameters.receive_goods_after_hours = !parameters.receive_goods_after_hours">
|
|
||||||
<div class="col pointer d-flex justtify-content-center align-items-center">
|
|
||||||
<i class="fa fs-20 fa-fw m-r-5" :class="{'fa-square-o': !parameters.receive_goods_after_hours, 'fa-check-square': parameters.receive_goods_after_hours, 'text-primary':parameters.receive_goods_after_hours}" ></i>
|
|
||||||
<p class="m-b-0">Available to receive after working hours</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-12 col-md pl-md-1">
|
|
||||||
<div class="row justify-content-center m-t-10 m-b-10" @click="parameters.receive_goods_on_weekend = !parameters.receive_goods_on_weekend">
|
|
||||||
<div class="col pointer d-flex justtify-content-center align-items-center">
|
|
||||||
<i class="fa fs-20 fa-fw m-r-5" :class="{'fa-square-o': !parameters.receive_goods_on_weekend, 'fa-check-square': parameters.receive_goods_on_weekend, 'text-primary':parameters.receive_goods_on_weekend}" ></i>
|
|
||||||
<p class="m-b-0">Available to receive goods on weekend</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="row m-b-15">
|
|
||||||
<div class="col-12 col-md pr-md-1 pb-3 pb-md-0">
|
|
||||||
<validation-wrapper-component selectable :validator="$v.parameters.property_type">
|
<validation-wrapper-component selectable :validator="$v.parameters.property_type">
|
||||||
<label>房型 Receiver's property type</label>
|
<label>房型 Receiver's property type</label>
|
||||||
<select-component :options="['住家Landed house', '公寓Condominium (Drop on lobby only)', '工厂Factory', '店面Shop', '商场Shopping Mall (Drop on loading bay only)', 'Others']" v-model="parameters.property_type"></select-component>
|
<select-component :options="['住家Landed house', '公寓Condominium (Drop on lobby only)', '工厂Factory', '店面Shop', '商场Shopping Mall (Drop on loading bay only)', 'Others']" v-model="parameters.property_type"></select-component>
|
||||||
</validation-wrapper-component>
|
</validation-wrapper-component>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-12 col-md pl-md-1 pb-3 pb-md-0">
|
</div>
|
||||||
<validation-wrapper-component :validator="$v.parameters.tools_required_unload">
|
<div class="row m-b-15">
|
||||||
<label>卸货工具 Tools require to unload goods</label>
|
<div class="col">
|
||||||
<multi-select-component :options="['Manpower', 'Forklift', 'Crane', 'None of above']" v-model="parameters.tools_required_unload"></multi-select-component>
|
<div class="form-group no-margin form-group-default p-b-5">
|
||||||
|
<label>Available to receive goods on: </label>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-12 col-md pb-3 pb-md-0">
|
||||||
|
<div class="row justify-content-center m-t-10 m-b-10" @click="parameters.receive_goods_working_hours = !parameters.receive_goods_working_hours">
|
||||||
|
<div class="col pointer d-flex justtify-content-center align-items-center">
|
||||||
|
<i class="fa fs-20 fa-fw m-r-5" :class="{'fa-square-o': !parameters.receive_goods_working_hours, 'fa-check-square': parameters.receive_goods_working_hours, 'text-primary':parameters.receive_goods_working_hours}" ></i>
|
||||||
|
<p class="m-b-0">Working Hours (9am-6pm)</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-12 col-md pb-3 pb-md-0">
|
||||||
|
<div class="row justify-content-center m-t-10 m-b-10" @click="parameters.receive_goods_after_hours = !parameters.receive_goods_after_hours">
|
||||||
|
<div class="col pointer d-flex justtify-content-center align-items-center">
|
||||||
|
<i class="fa fs-20 fa-fw m-r-5" :class="{'fa-square-o': !parameters.receive_goods_after_hours, 'fa-check-square': parameters.receive_goods_after_hours, 'text-primary':parameters.receive_goods_after_hours}" ></i>
|
||||||
|
<p class="m-b-0">After Working Hours</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-12 col-md pb-3 pb-md-0">
|
||||||
|
<div class="row justify-content-center m-t-10 m-b-10" @click="parameters.receive_goods_on_saturday = !parameters.receive_goods_on_saturday">
|
||||||
|
<div class="col pointer d-flex justtify-content-center align-items-center">
|
||||||
|
<i class="fa fs-20 fa-fw m-r-5" :class="{'fa-square-o': !parameters.receive_goods_on_saturday, 'fa-check-square': parameters.receive_goods_on_saturday, 'text-primary':parameters.receive_goods_on_saturday}" ></i>
|
||||||
|
<p class="m-b-0">On Saturday</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="row m-b-15">
|
||||||
|
<div class="col">
|
||||||
|
<validation-wrapper-component :validator="$v.parameters.additional_request">
|
||||||
|
<label>Additional Request</label>
|
||||||
|
<input class="form-control" name="additional_request" v-model="parameters.additional_request">
|
||||||
</validation-wrapper-component>
|
</validation-wrapper-component>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -220,11 +221,10 @@
|
|||||||
phone: '',
|
phone: '',
|
||||||
person_in_charge: '',
|
person_in_charge: '',
|
||||||
property_type: '',
|
property_type: '',
|
||||||
tools_required_unload: [],
|
additional_request: '',
|
||||||
pickup_time_from: '',
|
receive_goods_working_hours: false,
|
||||||
pickup_time_to: '',
|
|
||||||
receive_goods_after_hours: false,
|
receive_goods_after_hours: false,
|
||||||
receive_goods_on_weekend: false,
|
receive_goods_on_saturday: false,
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -241,11 +241,10 @@
|
|||||||
this.parameters.person_in_charge = this.data.contact ? this.data.contact.reference : '';
|
this.parameters.person_in_charge = this.data.contact ? this.data.contact.reference : '';
|
||||||
this.parameters.remark = this.data.remark ? this.data.remark.content : '';
|
this.parameters.remark = this.data.remark ? this.data.remark.content : '';
|
||||||
this.parameters.property_type = this.data.property_type ? this.data.property_type : '';
|
this.parameters.property_type = this.data.property_type ? this.data.property_type : '';
|
||||||
this.parameters.tools_required_unload = this.data.tools_required_unload ? this.data.tools_required_unload : [];
|
this.parameters.additional_request = this.data.additional_request ? this.data.additional_request : '';
|
||||||
this.parameters.pickup_time_from = this.data.pickup_time_from ? this.data.pickup_time_from : '';
|
this.parameters.receive_goods_working_hours = this.data.receive_goods_working_hours ? this.data.receive_goods_working_hours : false;
|
||||||
this.parameters.pickup_time_to = this.data.pickup_time_to ? this.data.pickup_time_to : '';
|
|
||||||
this.parameters.receive_goods_after_hours = this.data.receive_goods_after_hours ? this.data.receive_goods_after_hours : false;
|
this.parameters.receive_goods_after_hours = this.data.receive_goods_after_hours ? this.data.receive_goods_after_hours : false;
|
||||||
this.parameters.receive_goods_on_weekend = this.data.receive_goods_on_weekend ? this.data.receive_goods_on_weekend : false;
|
this.parameters.receive_goods_on_saturday = this.data.receive_goods_on_saturday ? this.data.receive_goods_on_saturday : false;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
|
|||||||
+3
-26
@@ -1,18 +1,5 @@
|
|||||||
import { required, requiredIf, numeric, helpers } from "vuelidate/lib/validators";
|
import { required, requiredIf, numeric } from "vuelidate/lib/validators";
|
||||||
import addressFormHandler from '../addressFormHandler';
|
import addressFormHandler from '../addressFormHandler'
|
||||||
|
|
||||||
const timeValidator = (time, type) =>
|
|
||||||
helpers.withParams({ type, time }, value => {
|
|
||||||
if (!value) return true; // if there's no value, consider it valid
|
|
||||||
|
|
||||||
const [valHours, valMinutes] = value.split(':').map(Number);
|
|
||||||
const [timeHours, timeMinutes] = time.split(':').map(Number);
|
|
||||||
|
|
||||||
return type === 'minTime'
|
|
||||||
? valHours > timeHours || (valHours === timeHours && valMinutes >= timeMinutes)
|
|
||||||
: valHours < timeHours || (valHours === timeHours && valMinutes <= timeMinutes);
|
|
||||||
});
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
validations: {
|
validations: {
|
||||||
parameters: {
|
parameters: {
|
||||||
@@ -34,17 +21,7 @@ export default {
|
|||||||
phone: {required, numeric},
|
phone: {required, numeric},
|
||||||
person_in_charge: { required },
|
person_in_charge: { required },
|
||||||
property_type: { required },
|
property_type: { required },
|
||||||
tools_required_unload: { required },
|
additional_request: { },
|
||||||
pickup_time_from: {
|
|
||||||
required,
|
|
||||||
minTime: timeValidator('09:00', 'minTime'),
|
|
||||||
maxTime: timeValidator('16:00', 'maxTime')
|
|
||||||
},
|
|
||||||
pickup_time_to: {
|
|
||||||
required,
|
|
||||||
minTime: timeValidator('15:00', 'minTime'),
|
|
||||||
maxTime: timeValidator('20:00', 'maxTime')
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mixins: [addressFormHandler]
|
mixins: [addressFormHandler]
|
||||||
|
|||||||
Reference in New Issue
Block a user