import Controller from '@ember/controller'; import { inject as service } from '@ember/service'; export default Controller.extend({ accountManagement : service(), accountManagementData : service(), businessSegmentData : service(), subBusinessSegmentData : service(), idTypeData : service(), addressTypeData : service(), countryData : service(), villageData : service(), provinceData : service(), municipalityData : service(), subDistrictData : service(), accountAddressData : service(), contactResourceData : service(), accountContactData : service(), teamAccessData : service(), teamResourceData : service(), accountTeamData : service(), categoryUioData : service(), accountCustomerUioData : service(), vehicleManagementData : service(), accountVehicleData : service(), hoyuSalesOrderApprovalData : service(), accountUnitSalesOrderData : service(), session : service(), errors : service(), didValidate: false, rightActionInProgress: false, businessSegments: Array(), subBusinessSegments: Array(), idTypes: Array(), addressTypes: Array(), countries: Array(), villages: Array(), provinces: Array(), municipalities: Array(), subDistricts: Array(), contactResources: Array(), teamAccesss: Array(), teamResources: Array(), categoryUios: Array(), vehicleManagements: Array(), hoyuSalesOrderApprovals: Array(), init() { this._super(...arguments); var businessSegments = this.businessSegmentData.getList(); this.set("businessSegments", businessSegments); var subBusinessSegments = this.subBusinessSegmentData.getList(); this.set("subBusinessSegments", subBusinessSegments); var idTypes = this.idTypeData.getList(); this.set("idTypes", idTypes); var addressTypes = this.addressTypeData.getList(); this.set("addressTypes", addressTypes); var countries = this.countryData.getList(); this.set("countries", countries); var villages = this.villageData.getList(); this.set("villages", villages); var provinces = this.provinceData.getList(); this.set("provinces", provinces); var municipalities = this.municipalityData.getList(); this.set("municipalities", municipalities); var subDistricts = this.subDistrictData.getList(); this.set("subDistricts", subDistricts); var contactResources = this.contactResourceData.getList(); this.set("contactResources", contactResources); var teamAccesss = this.teamAccessData.getList(); this.set("teamAccesss", teamAccesss); var teamResources = this.teamResourceData.getList(); this.set("teamResources", teamResources); var categoryUios = this.categoryUioData.getList(); this.set("categoryUios", categoryUios); var vehicleManagements = this.vehicleManagementData.getList(); this.set("vehicleManagements", vehicleManagements); var hoyuSalesOrderApprovals = this.hoyuSalesOrderApprovalData.getList(); this.set("hoyuSalesOrderApprovals", hoyuSalesOrderApprovals); }, actions: { onChangeCombo(propertyName, itemCollection) { this.set(propertyName, itemCollection); }, async saveAccountManagement() { this.set("rightActionInProgress", true); this.get('model') .validate() .then(async ({ validations }) => { this.set('didValidate', true); if (validations.get('isValid')) { this.set('accountManagement.model.isApprovalData', false); this.accountManagementData.save(this.accountManagement.model).then(response => { if (response != undefined) { this.transitionToRoute('account-management.detail', response.id); } }) .catch((e) => { this.set("rightActionInProgress", false); this.set('errorMessages', this.errors.getErrorMessages(e)); window.scrollTo(0, 0); }); } else { this.set("rightActionInProgress", false); } }); }, addRowData(modal_type) { if (modal_type == "account-address") { let data = this.accountAddressData.createRecord(); this.accountManagement.addRow(data, "accountAddress"); } if (modal_type == "account-contact") { let data = this.accountContactData.createRecord(); this.accountManagement.addRow(data, "accountContact"); } if (modal_type == "account-team") { let data = this.accountTeamData.createRecord(); this.accountManagement.addRow(data, "accountTeam"); } if (modal_type == "account-customer-uio") { let data = this.accountCustomerUioData.createRecord(); this.accountManagement.addRow(data, "accountCustomerUio"); } if (modal_type == "account-vehicle") { let data = this.accountVehicleData.createRecord(); this.accountManagement.addRow(data, "accountVehicle"); } if (modal_type == "account-unit-sales-order") { let data = this.accountUnitSalesOrderData.createRecord(); this.accountManagement.addRow(data, "accountUnitSalesOrder"); } }, deleteRowData(modal_type, data) { if (modal_type == "account-address") { this.accountManagement.deleteRow(data, "accountAddress"); } if (modal_type == "account-contact") { this.accountManagement.deleteRow(data, "accountContact"); } if (modal_type == "account-team") { this.accountManagement.deleteRow(data, "accountTeam"); } if (modal_type == "account-customer-uio") { this.accountManagement.deleteRow(data, "accountCustomerUio"); } if (modal_type == "account-vehicle") { this.accountManagement.deleteRow(data, "accountVehicle"); } if (modal_type == "account-unit-sales-order") { this.accountManagement.deleteRow(data, "accountUnitSalesOrder"); } }, }, });