const view_transport = {
section_contract: "section_contract",
ip_check: "#hdf_ip_check",
div_transport: "div_transport",
view_data_ready: false,
sale: {
init: function () {
$('#tab_sale a[href="#div_quote"]').tab('show');
$('.selectpicker').selectpicker();
shared.ViewFunc.LoadValueSelectFirst('#drl_year_buy');
shared.ViewFunc.LoadValueSelectFirst('#drl_package');
shared.ViewFunc.LoadValueSelectFirst('#drl_deduction');
shared.CreateControl.BirthdayPicker("#txt_car_fisrt_date");
$(".input_number").blur(function () {
shared.Other.onlyGetNumber("#" + this.id);
Format.FormatNumberCurrency("#" + this.id);
});
shared.ViewFunc.LoadCheckbox();
var startDate = new Date();
startDate = shared.DateTimeFunc.convertDatetoString(startDate);
shared.CreateControl.DatePicker('#buyer_payment_date', startDate, null);
},
load_option_map: function (_control, _child_code, _root_id) {
shared.ViewFunc.SelectPicker_Single_Remove_Option(_control);
var dd = {root_id: _root_id};
dd.child_code = _child_code;
dd = API.CreateDataSend('vehicle/transport/load/option/map', dd);
API.POST(dd, function (e) {
Loading.Hide();
var dd_json = JSON.parse(e);
shared.ViewFunc.SelectPickerAddOption(dd_json, _child_code, _control);
});
},
change_automaker: function () {
var ID_AUTOMAKER = $("#drl_automaker").val();
view_transport.sale.load_option_map("drl_model", 'CAR_MODEL', ID_AUTOMAKER);
shared.ViewFunc.SelectPicker_Single_Remove_Option("drl_body_styles");
shared.ViewFunc.SelectPicker_Single_Remove_Option("drl_model_year");
},
change_model: function () {
var ID_MODEL = $("#drl_model").val();
view_transport.sale.load_option_map("drl_body_styles", 'CAR_BODY_STYLES', ID_MODEL);
view_transport.sale.load_option_map("drl_model_year", 'CAR_MODEL_YEAR', ID_MODEL);
},
change_kind: function () {
var config = $("#drl_kind").find(':selected').attr('config');
if (config !== "") {
config = JSON.parse(config);
//=============================================================================================
if (config.car_weigh_goods === "yes") {
$("#div_contain_weigh_goods").addClass("visible").removeClass("hidden");
} else if (config.car_weigh_goods === "no") {
$("#div_contain_weigh_goods").addClass("hidden").removeClass("visible");
}
if (config.fee_mode === "yes") {
$('#drl_get_fee_mode').removeClass('d-none');
} else {
$('#drl_get_fee_mode').addClass('d-none');
}
} else {
$("#div_contain_weigh_goods").addClass("visible").removeClass("hidden");
}
},
change_seat: function () {
var seat_value = parseInt($("#drl_seat option:selected").text());
var groupFilter = $("#drl_seat_buy");
groupFilter.selectpicker('val', '');
groupFilter.find('option').remove();
groupFilter.selectpicker("refresh");
for (var i = 1; i <= seat_value; i++) {
$("#drl_seat_buy").append('');
}
$("#drl_seat_buy").selectpicker("refresh");
$("#drl_seat_buy").selectpicker('val', seat_value);
//$("#drl_seat_buy").prop('disabled', true);
//$("#drl_seat_buy").selectpicker('refresh');
},
change_discount: function () {
var discount_mode = $("#drl_product_discount").find(':selected').attr('discount_mode');
if (discount_mode === "PERCENT_CONFIG") {
var discount_percent = $("#drl_product_discount").find(':selected').attr('discount_percent');
$("#txt_discount_percent").val(discount_percent);
$('#txt_discount_percent').prop('readonly', true);
} else if (discount_mode === "PERCENT_INPUT") {
$("#txt_discount_percent").val(0);
$('#txt_discount_percent').prop('readonly', false);
} else {
$("#txt_discount_percent").val(0);
$('#txt_discount_percent').prop('readonly', true);
}
},
load_premium: function (_callback) {
var dd_check = shared.GetInput.Div('div_quote');
var dd_json = JSON.stringify(dd_check);
var dd_code = CryptoJS.SHA256(dd_json).toString();
$(view_transport.ip_check).val(dd_code);
$('#div_contain_premium').html("");
var dd = shared.GetInput.Div(view_transport.div_transport);
dd.kind_config = $("#drl_kind").find(':selected').attr('config');
dd.seat_quantily = parseInt($("#drl_seat option:selected").text());
dd = API.CreateDataSend('vehicle/transport/load/premium', dd);
API.POST(dd, function (e) {
$('#div_contain_premium').html(e);
$("#div_contain_image").removeClass("visible").addClass("hidden");
shared.ViewFunc.ScrollId('#div_contain_premium');
if (_callback == null) {
Loading.Hide();
} else _callback(e);
});
},
load_contract: function () {
let dd_code_check = $(view_transport.ip_check).val();
let dd_data_check = shared.GetInput.Div('div_quote');
let dd_json = JSON.stringify(dd_data_check);
let dd_code = CryptoJS.SHA256(dd_json).toString();
if (dd_code_check !== dd_code) {
func_notification.Warning("Thông tin bảo hiểm đã thay đổi, vui lòng kiểm tra lại phí.");
return;
}
//=============================================================================================
$('#tab_sale a[href="#div_contract"]').tab('show');
$("#div_btn_premium").removeClass("visible").addClass("hidden");
var dd = shared.GetInput.Div(view_transport.div_transport);
dd = API.CreateDataSend('vehicle/load/city/district', dd);
API.POST(dd, function (e) {
$('.selectpicker').selectpicker();
var dd_json = JSON.parse(e);
shared.ViewFunc.SelectPickerAddOption(dd_json, "1", "drl_city");
shared.ViewFunc.SelectPickerAddOption(dd_json, "1", "drl_beneficiary_city");
//shared.ViewFunc.SelectPickerAddOption(dd_json, "2", "drl_district");
shared.CreateControl.DatePicker('.datetimepicker');
view_transport.share.change_active_date();
shared.ViewFunc.ScrollId('#' + view_transport.div_transport);
$(".input_string_number").blur(function () {
shared.Other.onlyGetNumber("#" + this.id);
});
$(".input_string").blur(function () {
$("#" + this.id).val($("#" + this.id).val().replaceAll(" ", ""))
});
Loading.Hide();
});
},
change_city: function (_city, _district) {
_city ??= 'drl_city';
_district ??= 'drl_district';
shared.ViewFunc.SelectPicker_Single_Remove_Option(_district);
var dd = {root_id: $("#" + _city).val()};
dd = API.CreateDataSend('vehicle/load/district', dd);
API.POST(dd, function (e) {
Loading.Hide();
var dd_json = JSON.parse(e);
shared.ViewFunc.SelectPickerAddOption(dd_json, "2", _district);
});
},
back_quote: function () {
$('#tab_sale a[href="#div_quote"]').tab('show');
shared.ViewFunc.ScrollId('#' + view_transport.div_transport);
$("#div_btn_premium").removeClass("hidden").addClass("visible");
},
register: function (_url, _callback) {
_url ??= 'vehicle/transport/register';
var dd = shared.GetInput.Div(view_transport.div_transport);
dd = API.CreateDataSend(_url, dd);
API.POST(dd, function (e) {
if (_callback != null) _callback(e); else {
$('#div_contract').html(e);
shared.ViewFunc.ScrollId('#' + view_transport.div_transport);
Loading.Hide();
}
}, function (_mess, _value, _type) {
if (_type === "yesno") {
$('#hdf_sale_code').val(_value);
func_notification.YesNo(
"Hồ sơ của bạn sẽ cần BHV thẩm định. "
+ "Quý Khách vui lòng chờ thông báo từ BHV, "
+ "hoặc nhân viên của BHV sẽ liên hệ với Quý Khách. Cám ơn."
, "Xác nhận"
, function (e) {
if (e) {
var dd = shared.GetInput.Div(view_transport.div_transport);
dd.sale_code = $('#hdf_sale_code').val();
dd = API.CreateDataSend(_url, dd);
API.POST(dd, function (e) {
if (_callback != null) _callback(e);
});
} else {
$('#hdf_sale_code').val("");
}
});
} else func_notification.Info(_mess);
Loading.Hide();
});
},
choose_additional_term: function (_item_id) {
if ($('#' + _item_id).is(":checked")) {
$("#" + _item_id).prop("checked", false);
} else {
$("#" + _item_id).prop("checked", true);
}
},
choose_additional_term_pdc: function (_item_id) {
view_transport.sale.choose_additional_term(_item_id);
view_transport.sale.change_check_pdc(_item_id);
},
choose_additional_term_vpa: function (_item_id) {
view_transport.sale.choose_additional_term(_item_id);
view_transport.sale.change_check_vpa(_item_id);
},
change_check_pdc: function (_item_id) {
if ($('#' + _item_id).is(":checked")) {
$("#div_pdc_insurance").removeClass("hidden").addClass("visible");
$("#div_pdc_option").removeClass("hidden").addClass("visible");
$('#f4c981cc-4233-4f7a-8381-93fd23b6526e').removeClass('d-none');
} else {
$('#f4c981cc-4233-4f7a-8381-93fd23b6526e').addClass('d-none');
$("#div_pdc_insurance").removeClass("visible").addClass("hidden");
$("#div_pdc_option").removeClass("visible").addClass("hidden");
var elements = document.getElementsByClassName('js_check_pdc');
for (var i = 0; i < elements.length; i++) {
$("#" + elements[i].id).prop('checked', false);
}
$("#drl_body_styles").selectpicker('val', '');
$("#drl_model_year").selectpicker('val', '');
$("#drl_year").selectpicker('val', '');
$("#drl_deduction").selectpicker('val', '');
shared.Other.Input.SetValueByName("car_value", "");
}
},
change_check_vpa: function (_item_id) {
if ($('#' + _item_id).is(":checked")) {
$("#div_vpa_option").removeClass("hidden").addClass("visible");
} else {
$("#div_vpa_option").removeClass("visible").addClass("hidden");
$("#drl_package").selectpicker('val', '');
$("#drl_seat_buy").selectpicker('val', '');
}
},
load_customer: function (_callback) {
var dd = API.CreateDataSend('shared/load/customer/data', null, {
loading: false
});
API.POST(dd, function (e) {
if (_callback != null) _callback(e); else {
let dd = JSON.parse(e);
shared.ViewFunc.SelectPicker.AddOptionList('#buyer_customer_code', dd);
}
});
},
load_partner: function (_callback) {
var dd = API.CreateDataSend('shared/load/partner/data', null, {
loading: false
});
API.POST(dd, function (e) {
if (_callback != null) _callback(e); else {
let dd = JSON.parse(e);
shared.ViewFunc.SelectPicker.AddOptionList('#buyer_partner_code', dd);
}
});
}
},
share: {
change_active_date: function (_id) {
if (_id == null) _id = "";
var date = shared.DateTimeFunc.stringToDate($("#active_date" + _id).val(), "dd/MM/yyyy");
var year_buy = parseInt($("#drl_year_buy option:selected").text());
date = shared.DateTimeFunc.date_add_year(date, year_buy);
$("#inactive_date" + _id).val(shared.DateTimeFunc.convertDatetoString(date));
shared.DateTimeFunc.control_input_lock('#inactive_date' + _id, true);
},
},
view: {
buyer_change_type: function (_this) {
var dd = $(_this).val();
switch (dd) {
case "person": {
$('#f1-fullname').html('Họ và tên (*)');
$('#f1-private-code').html('Căn cước công dân');
break;
}
default: {
$('#f1-fullname').html('Tên công ty (*)');
$('#f1-private-code').html('Mã số thuế (*)');
break;
}
}
}, change_chk_beneficiary: function () {
if ($('#chk_beneficiary').is(":checked")) {
$("#div_contain_beneficiary").removeClass("d-none");
} else {
$("#div_contain_beneficiary").addClass("d-none");
}
},
},
d6d1aa47a047c: {
show: function () {
$('#f8aa120d').modal('show');
sha_control_select.clear_select_val('f8aa120d_f1');
sha_control_select.clear_select_val('f8aa120d_f2');
sha_control_input.clear_val('f8aa120d_f3');
sha_control_input.clear_val('f8aa120d_f4');
},
remove_item: function (_id) {
//console.log(this.get_data());
$('#d6d1aa47a047c_' + _id).remove();
let dd = view_transport.d6d1aa47a047c.get_data();
if (dd != null && dd.length > 0) {
let dd2 = [];
dd.forEach(a => {
if (a.option_id !== _id) dd2.push(a);
})
view_transport.d6d1aa47a047c.set_data(dd2);
}
view_transport.premium();
},
make_item: function () {
let ll_f1 = sha_control_select.get_valText('f8aa120d_f1');
let dd_f2 = sha_control_select.get_valText('f8aa120d_f2');
let dd_f3 = Number(sha_control_input.get_val('f8aa120d_f3'));
let dd_f4 = Number(sha_control_input.get_val('f8aa120d_f4'));
let ll_data = [];
let dd_item_html = "";
let dd_data_check = view_transport.d6d1aa47a047c.get_data();
if (dd_data_check.length > 0) ll_data = dd_data_check;
//let dd_for_success = true;
if (ll_f1.length < 1) {
func_notification.Error("Chưa chọn \"Loại hình bảo hiểm\" tăng giảm phí");
return false;
}
if (dd_f2 === undefined) {
func_notification.Error("Chưa chọn đề xuất tăng giảm phí");
return false;
}
if (dd_f3 < 1 && dd_f4 < 1) {
func_notification.Error("Chưa nhập % hoặc số tiền đề xuất tăng giảm phí");
return false;
}
// let dd_value_change = dd_f3 + ' %';
// if (dd_f3 < 1 && dd_f4 > 1) {
// dd_value_change = dd_f4 + ' VNĐ';
// }
console.log(dd_f4);
let ll_item_lock = "";
let dd_check = dd_data_check.find(a => a.option_id === ll_f1.value);
if (dd_check == null) {
ll_data.push({
option_id: ll_f1.value, option_type: dd_f2.value, option_value: dd_f3, option_value1: dd_f4
});
let dd_fm_f3 = Format.FormatNumberCurrencyNoUnit(dd_f3);
let dd_value_change = dd_fm_f3 + ' %';
if (dd_f3 < 1 && dd_f4 > 1) {
dd_f4 = Format.FormatNumberCurrencyNoUnit(dd_f4);
dd_value_change = dd_f4 + ' VNĐ';
}
dd_item_html += '
'
+ ''
+ '' + ll_f1.text + ': ' + dd_f2.text + ' ' + dd_value_change
+ '
';
} else {
ll_item_lock += ll_f1.text + ', '
}
//console.log(dd_item_html);
$('#d6d1aa47a047c').append(dd_item_html);
view_transport.d6d1aa47a047c.set_data(ll_data);
$('#f8aa120d').modal('hide');
view_transport.premium();
if (ll_item_lock.length > 5) {
ll_item_lock = ll_item_lock.substring(0, ll_item_lock.length - 2) + ': đã có trong danh sách tăng giảm phí. Vui lòng xoá trước khi thêm.';
func_notification.Error(ll_item_lock);
}
}, set_data: function (_data) {
_data = JSON.stringify(_data);
$('#d6d1aa47a047c_value').val(_data);
}, get_data: function () {
let dd = $('#d6d1aa47a047c_value').val();
if (dd == null || dd.length < 1) return [];
return JSON.parse(dd);
}
},
cer_review: {
render: function () {
var dd = shared.GetInput.Div(view_transport.div_transport);
dd = API.CreateDataSend('vehicle/transport/review', dd);
API.POST(dd, function (e) {
view_transport.cer_review.open(e);
});
},
id: "#b1f8803d8874",
open: function (_img) {
_img = 'data:application/pdf;base64,' + _img;
$('#b630a18a_view').attr('src', _img);
//$('body').addClass('disabled-overflow');
shared.ViewFunc.DisableScroll();
$(view_transport.cer_review.id).addClass('show');
Loading.Hide();
},
close: function () {
//$('body').removeClass('disabled-overflow');
shared.ViewFunc.EnableScroll();
$(view_transport.cer_review.id).removeClass('show');
}
},
init: function (_callback) {
shared.ViewFunc.ScrollId('#section_header');
shared.CreateControl.FormCustom('#' + view_transport.section_contract);
sha_control_checked.init();
sha_control_checked.init('div_contain_ccl', function (_this, _checked) {
view_transport.premium();
})
sha_control_checked.init('div_contain_vpa', function (_this, _checked) {
view_transport.change_check_vpa(_checked);
view_transport.premium();
})
sha_control_checked.init('div_contain_pdc', function (_this, _checked) {
view_transport.change_check_pdc(_checked);
view_transport.premium();
})
sha_control_checked.init('div_pdc_insurance', function () {
view_transport.premium();
})
sha_control_select.init('drl_year_buy', 0, function () {
view_transport.premium();
view_web_shared.change_active_date();
});
sha_control_select.init('drl_goal', 0, function () {
view_transport.premium();
});
sha_control_select.init('drl_weigh_goods', 0, function () {
view_transport.premium();
});
sha_control_select.init('drl_package', 0, function () {
view_transport.premium();
});
sha_control_select.init('drl_kind', 0, function () {
view_transport.change_kind();
view_transport.premium();
});
sha_control_select.init('drl_seat', 0, function () {
view_transport.change_seat();
view_transport.premium();
});
sha_control_select.init('drl_deduction', 0, function () {
view_transport.premium();
});
sha_control_select.init('drl_get_fee_mode', 0, function () {
view_transport.premium();
});
sha_control_select.init('drl_kind_action', 0, function () {
view_web_shared.change_kind_action();
});
sha_control_select.init('drl_kind_customer', 0, function () {
view_web_shared.change_kind_customer();
});
sha_control_select.init('drl_buyer_city', 0, function (e) {
view_web_shared.location_load_district('drl_buyer_district', e);
});
sha_control_select.init('drl_beneficiary_city', 0, function (e) {
view_web_shared.location_load_district('drl_beneficiary_district', e);
});
sha_control_select.init('drl_owner_vehicle_city', 0, function (e) {
view_web_shared.location_load_district('drl_owner_vehicle_district', e);
});
sha_control_checked.init('chk_owner_vehicle', function (_this, _checked) {
view_transport.change_chk_owner_vehicle(_checked);
});
sha_control_checked.init('chk_beneficiary', function (_this, _checked) {
view_transport.change_chk_beneficiary(_checked);
});
sha_control_select.init('drl_automaker', 0, function (e) {
let product_id = $("#hdf_product_id").val();
view_web_shared.load_option_map('drl_model', 'CAR_MODEL', e, product_id, function () {
sha_control_select.init('drl_model', 0, function (e) {
view_web_shared.load_option_map('drl_body_styles', 'CAR_BODY_STYLES', e, product_id);
view_web_shared.load_option_map('drl_model_year', 'CAR_MODEL_YEAR', e, product_id);
});
});
});
sha_control_select.init('drl_type_engine', 0, function (e) {
view_transport.change_type_engine(e);
});
sha_control_datetime.init('txt_car_fisrt_date'
, function () {
view_transport.premium();
}
);
if (_callback != null) _callback();
},
change_type_engine: function (_id) {
_id ??= sha_control_select.get_val('drl_type_engine');
switch (_id) {
case "31cd6b1d-39a6-42d5-9c5f-13f44ad1a8a9": {
$('.div_value_battery').addClass('d-none');
break;
}
default: {
$('.div_value_battery').removeClass('d-none');
break;
}
}
},
change_car_value: function (_id) {
let dd_value = sha_control_input.get_val(_id);
dd_value = shared.Other.GetNumberOnly(dd_value, ',');
dd_value = Format.Number(dd_value, 0, ',', '.');
sha_control_input.set_val(_id, dd_value);
if (_id.indexOf('_info') > -1) {
let dd_id = _id.replace('_info', '');
sha_control_input.set_val(dd_id, dd_value);
//
// let dd_value2 = sha_control_input.get_val(dd_id);
//
// if(dd_value2.length < 1 || dd_value2 == "0"){
//
// }
}
view_transport.premium();
},
change_check_vpa: function (_checked) {
if (_checked) {
$("#div_vpa_option").removeClass("d-none");
} else {
$("#div_vpa_option").addClass("d-none");
//sha_control_select.clear_select_val('drl_package');
//sha_control_select.clear_select_val('drl_seat_buy');
}
},
change_check_pdc: function (_checked) {
if (_checked) {
$("#div_pdc_insurance").removeClass("d-none");
$("#div_pdc_option").removeClass("d-none");
$("#div_contain_picture").removeClass("d-none");
} else {
$("#div_contain_picture").addClass("d-none");
$("#div_pdc_insurance").addClass("d-none");
$("#div_pdc_option").addClass("d-none");
var elements = document.getElementsByClassName('js_check_pdc');
for (var i = 0; i < elements.length; i++) {
sha_control_checked.checked_is_active(elements[i], false);
}
sha_control_select.clear_select_val('drl_body_styles');
sha_control_select.clear_select_val('drl_model_year');
//sha_control_select.clear_select_val('drl_deduction');
//sha_control_input.clear_val('txt_value');
}
},
change_chk_owner_vehicle: function (_checked) {
let ll_input = [["buyer_fullname", "owner_vehicle_fullname"], ["buyer_email", "owner_vehicle_email"], ["buyer_phone", "owner_vehicle_phone"], ["buyer_job", "owner_vehicle_job"], ["buyer_identity_card", "owner_vehicle_identity_card"], ["buyer_address", "owner_vehicle_address"]];
if (_checked) {
for (let i = 0; i < ll_input.length; i++) {
let dd_value = shared.Other.Input.GetValueByName(ll_input[i][0]);
if (dd_value != null) {
sha_control_input.set_val(ll_input[i][1], dd_value);
}
}
sha_control_select.set_val('drl_owner_vehicle_relationship', '1b9eb913-b96b-45e8-9fc4-80f0d46d3ab1');
let buyer_gender = sha_control_select.get_val('drl_buyer_gender');
sha_control_select.set_val('drl_owner_vehicle_gender', buyer_gender);
let buyer_city = sha_control_select.get_val('drl_buyer_city');
let buyer_district = sha_control_select.get_val('drl_buyer_district');
sha_control_select.set_val('drl_owner_vehicle_city', buyer_city);
view_web_shared.location_load_district('drl_owner_vehicle_district', buyer_city, buyer_district);
//let buyer_birthday = sha_control_datetime.get_value('buyer_birthday');
//sha_control_datetime.set_value('owner_vehicle_birthday', buyer_birthday)
} else {
for (var i = 0; i < ll_input.length; i++) {
var dd_value = shared.Other.Input.GetValueByName(ll_input[i][1]);
if (dd_value != null) {
sha_control_input.clear_val(ll_input[i][1]);
}
}
sha_control_select.clear_select_val('drl_owner_vehicle_relationship');
sha_control_select.clear_select_val('drl_owner_vehicle_gender');
sha_control_select.clear_select_val('drl_owner_vehicle_city');
sha_control_select.clear_select_val('drl_owner_vehicle_district');
//sha_control_datetime.clear_val('owner_vehicle_birthday');
}
},
change_chk_beneficiary: function (_checked) {
let ll_input = [["buyer_fullname", "beneficiary_fullname"], ["buyer_email", "beneficiary_email"], ["buyer_phone", "beneficiary_phone"], ["buyer_identity_card", "beneficiary_identity_card"], ["buyer_address", "beneficiary_address"]];
if (_checked) {
for (let i = 0; i < ll_input.length; i++) {
let dd_value = shared.Other.Input.GetValueByName(ll_input[i][0]);
if (dd_value != null) {
sha_control_input.set_val(ll_input[i][1], dd_value);
}
}
//sha_control_select.set_val('drl_beneficiary_relationship', '1b9eb913-b96b-45e8-9fc4-80f0d46d3ab1');
//let buyer_gender = sha_control_select.get_val('drl_buyer_gender');
//sha_control_select.set_val('drl_beneficiary_gender', buyer_gender);
let buyer_city = sha_control_select.get_val('drl_buyer_city');
let buyer_district = sha_control_select.get_val('drl_buyer_district');
sha_control_select.set_val('drl_beneficiary_city', buyer_city);
view_web_shared.location_load_district('drl_beneficiary_district', buyer_city, buyer_district);
//let buyer_birthday = sha_control_datetime.get_value('buyer_birthday');
//sha_control_datetime.set_value('beneficiary_birthday', buyer_birthday)
} else {
for (var i = 0; i < ll_input.length; i++) {
var dd_value = shared.Other.Input.GetValueByName(ll_input[i][1]);
if (dd_value != null) {
sha_control_input.clear_val(ll_input[i][1]);
}
}
//sha_control_select.clear_select_val('drl_beneficiary_relationship');
//sha_control_select.clear_select_val('drl_beneficiary_gender');
sha_control_select.clear_select_val('drl_beneficiary_city');
sha_control_select.clear_select_val('drl_beneficiary_district');
//sha_control_datetime.clear_val('beneficiary_birthday');
}
},
change_kind: function () {
let kind_list = $('#drl_kind .--select-item .active');
let config = "";
if (kind_list.length > 0) {
let item = kind_list[0];
config = shared.GetInput.Attributes(item, 'kind_config');
$('#hdf_kind_config').val(config);
}
if (config !== "") {
config = JSON.parse(config);
if (config.car_weigh_goods === "yes") {
$("#div_contain_weigh_goods").removeClass("d-none");
} else if (config.car_weigh_goods === "no") {
$("#div_contain_weigh_goods").addClass("d-none");
}
if (config.fee_mode === "yes") {
$('#div_drl_get_fee_mode').removeClass('d-none');
} else {
$('#div_drl_get_fee_mode').addClass('d-none');
}
} else {
$("#div_contain_weigh_goods").removeClass("d-none");
}
},
change_seat: function () {
let drl_seat = sha_control_select.get_attr('drl_seat', 'seat_value', 0);
let seat_value = 0;
if (drl_seat != null) {
seat_value = parseInt(drl_seat);
}
let ll_items = [];
for (let i = 1; i <= seat_value; i++) {
ll_items.push([i.toString(), i.toString()]);
}
sha_control_select.option_adds('drl_seat_buy', ll_items);
//sha_control_select.init('drl_seat_buy', 0);
sha_control_select.init('drl_seat_buy', 0, function () {
view_transport.premium();
});
sha_control_select.set_val('drl_seat_buy', seat_value, 0);
},
load: function () {
let send_data = shared.GetInput.Div('section_para_url');
send_data = API.CreateDataSend('vehicle/transport/load/data', send_data);
API.POST(send_data, function (e) {
$('#' + view_transport.section_contract).html(e);
view_transport.init(function () {
func_set_value_input(function () {
view_transport.change_type_engine();
view_transport.change_kind();
view_transport.change_seat();
view_web_shared.change_kind_action();
view_web_shared.change_kind_customer();
view_transport.view_data_ready = true;
view_transport.premium();
})
})
Loading.Hide();
});
},
load_customer: function (_callback) {
let dd = API.CreateDataSend('shared/load/customer/data', null, {
loading: false
});
API.POST(dd, function (e) {
if (_callback != null) _callback(e); else {
if (e !== "") {
var dd_json = JSON.parse(e);
let ll_items = [];
let dd_control = 'buyer_customer_code';
for (let i = 0; i < dd_json.length; i++) {
let item = dd_json[i];
if (item.id !== undefined) item.name = '[' + item.id + '] ' + item.name;
ll_items.push([item.id, item.name]);
}
sha_control_select.option_adds(dd_control, ll_items);
sha_control_select.init(dd_control, 0);
let dd_set_default_value = shared.ViewFunc.Attr.Get(dd_control, 'set_default_value');
if (dd_set_default_value != null) {
sha_control_select.set_val(dd_control, dd_set_default_value);
}
}
}
}, function (e) {
console.log(e);
});
},
load_partner: function (_callback) {
var dd = API.CreateDataSend('shared/load/partner/data', null, {
loading: false
});
API.POST(dd, function (e) {
if (_callback != null) _callback(e); else {
if (e !== "") {
var dd_json = JSON.parse(e);
let ll_items = [];
let ll_agency_items = [];
let dd_control = 'buyer_partner_code';
for (let i = 0; i < dd_json.length; i++) {
let item = dd_json[i];
if (item.id !== undefined) item.name = '[' + item.id + '] ' + item.name;
if (item.kind == 'D') {
ll_agency_items.push([item.id, item.name]);
} else {
ll_items.push([item.id, item.name]);
}
}
sha_control_select.option_adds(dd_control, ll_items);
sha_control_select.init(dd_control, 0);
// let dd_set_default_value = shared.ViewFunc.Attr.Get(dd_control, 'set_default_value');
// if (dd_set_default_value != null) {
// sha_control_select.set_val(dd_control, dd_set_default_value);
// }
//agency
let dd_div_agency = 'buyer_agency_code';
sha_control_select.option_adds(dd_div_agency, ll_agency_items);
sha_control_select.init(dd_div_agency, 0);
// let dd_set_default_value = shared.ViewFunc.Attr.Get(dd_control, 'set_default_value');
// if (dd_set_default_value != null) {
// sha_control_select.set_val(dd_control, dd_set_default_value);
// }
}
}
}, function (e) {
console.log(e);
});
},
premium: function (_callback) {
if (!view_transport.view_data_ready && _callback == null) return;
var send_data = shared.GetInput.Div('div_quote');
send_data = API.CreateDataSend('vehicle/transport/premium', send_data, {
loading: _callback != null
});
API.POST(send_data, function (e) {
$('#div_contain_premium').html(e);
$("#div_contain_premium").removeClass("d-none");
$("#div_error").addClass("d-none");
if (_callback != null) _callback();
else {
var year_buy = sha_control_select.get_text('drl_year_buy');
$("#sp_year_buy").text(year_buy);
var kind = sha_control_select.get_text('drl_kind');
$("#sp_kind").text(kind);
var premium_payment = $("#hdf_total_premium").val();
var premium_payment_text = Format.Number(premium_payment, 0, ",", ".");
$("#sp_total_premium").text(premium_payment_text);
//Format.FormatNumberCurrency("#sp_total_premium");
var kind_action = sha_control_select.get_text('drl_kind_action');
if (kind_action !== "" && kind_action != null) {
$("#sp_kind_action").text(kind_action);
} else {
$("#sp_kind_action").text('Đăng ký mới');
}
Loading.Hide();
}
}, function (e) {
$("#div_contain_premium").addClass("d-none");
$("#div_error").removeClass("d-none");
$("#p_error_info").text(e);
$("#sp_total_premium").text("");
if (_callback != null) func_notification.Error(e);
});
},
install: function (_action) {
if (_action === "install") {
var dd = shared.GetInput.Div(view_transport.section_contract);
let dd_url = 'vehicle/transport/install';
dd = API.CreateDataSend(dd_url, dd);
API.POST(dd, function (data) {
view_transport.final(null, data);
}, function (_mess, _value, _type) {
view_transport.cer_review.close();
if (_type === "yesno") {
$('#hdf_sale_code').val(_value);
func_notification.YesNo("Hồ sơ của bạn sẽ cần BHV thẩm định. " + "Quý Khách vui lòng chờ thông báo từ BHV, " + "hoặc nhân viên của BHV sẽ liên hệ với Quý Khách. Cám ơn.", "Xác nhận", function (e) {
if (e) {
var dd = shared.GetInput.Div(view_transport.section_contract);
dd.sale_code = $('#hdf_sale_code').val();
dd = API.CreateDataSend(dd_url, dd);
API.POST(dd, function (data) {
view_transport.final(null, data);
});
} else {
$('#hdf_sale_code').val("");
}
});
} else func_notification.Info(_mess);
Loading.Hide();
});
} else {
let is_contract = $('#div_contract').hasClass("d-none");
if (is_contract) {
$("#div_contract").removeClass("d-none");
shared.ViewFunc.ScrollId('#div_contract');
view_web_shared.change_active_date();
} else {
view_transport.cer_review.render();
}
}
},
final: function (_callback, _data) {
if (_callback != null) _callback(true, data); else {
let title_info_final = 'Đăng ký thành công!';
let kind_action = sha_control_select.get_val('#drl_kind_action', 0);
if (kind_action === "update") {
title_info_final = 'Cập nhật thành công!';
} else if (kind_action === "renew") {
title_info_final = 'Tái tục thành công!';
}
$('#' + view_transport.section_contract).html(_data);
$("#section_action").html('');
$("#section_action").addClass("d-none");
shared.ViewFunc.ScrollId('#' + view_transport.section_contract);
$("#title_info_final").text(title_info_final);
Loading.Hide();
}
},
terminate: {
request_open: function (_id) {
new class_transport_terminate().request_open(_id);
},
request_save: function () {
new class_transport_terminate().request_save();
},
response_open: function (_id) {
new class_transport_terminate().response_open(_id);
},
response_save: function () {
new class_transport_terminate().response_save();
},
remove_offer: function (_id, _cer) {
new class_transport_terminate().remove_offer(_id, _cer);
}
}
};
class class_transport_terminate {
constructor() {
this.dialog_id = 'adc71b55-0a4d-4659-b5c4-dc99ff4eaca5';
}
set_content(_html) {
$('#' + this.dialog_id).find('.modal-content').html(_html);
}
Hide() {
shared.ModalFunc.ModalHide(this.dialog_id);
}
Show(_html) {
this.set_content(_html);
shared.ModalFunc.ModalShow(this.dialog_id);
}
request_save() {
let send_data = shared.GetInput.Div(this.dialog_id);
let dd_register_id = send_data.register_id;
send_data = API.CreateDataSend('vehicle/transport/request/teminate', send_data);
API.POST(send_data, function (e) {
func_notification.Success(e);
new class_transport_terminate().Hide();
view_report.report.contract_detail(dd_register_id);
});
}
request_open(_id) {
let send_data = {
register_id: _id
}
send_data = API.CreateDataSend('vehicle/transport/request/teminate/load/data', send_data);
API.POST(send_data, function (e) {
new class_transport_terminate().Show(e);
Loading.Hide();
});
}
response_save() {
let send_data = shared.GetInput.Div(this.dialog_id);
let dd_register_id = send_data.register_id;
send_data = API.CreateDataSend('vehicle/transport/response/teminate', send_data);
API.POST(send_data, function (e) {
func_notification.Success(e);
new class_transport_terminate().Hide();
view_report.report.contract_detail(dd_register_id);
//Loading.Hide();
});
}
response_open(_id) {
let send_data = {
register_id: _id
}
send_data = API.CreateDataSend('vehicle/transport/response/teminate/load/data', send_data);
API.POST(send_data, function (e) {
new class_transport_terminate().Show(e);
Loading.Hide();
});
}
remove_offer(_registerId, _cer) {
func_notification.YesNo('Xác nhận hủy bảo chào: ' + _cer, '', function (e) {
if (e) {
let send_data = {
register_id: _registerId,
}
send_data = API.CreateDataSend('vehicle/transport/remove/offer', send_data);
API.POST(send_data, function (e) {
func_notification.Success(e);
view_report.report.contract_detail(_registerId);
});
}
})
}
}