hino / app / services / approval-input-configuration.js
approval-input-configuration.js
Raw
import Service from '@ember/service';

export default Service.extend({
	model : null,
	init() {
		this._super(...arguments); 
	},
	setModel(data) {
		this.set("model", data);
	},
	addRow(data, property_name) {
		let datas = new Array();
		let prevData = this.get("model." + property_name);
		if (prevData != null) {
			prevData.pushObject(data);
			datas = prevData;
		} else {
			datas.pushObject(data);
		}
		this.set("model." + property_name, datas);
	},
	deleteRow(data, property_name) {
		let prevData = this.get("model." + property_name);
		prevData.removeObject(data);
		this.set("model." + property_name, prevData);
	},
	clearDetail(property_name) {
		this.set("model." + property_name, new Array());
	},
	buildFilter(index) {
		let filter = '';
		let approval_input_configuration_details = this.get('model.approvalInputConfigurationDetail');
		let index_row = 0;
		approval_input_configuration_details.forEach(element => {
			let form_id = element.form.get('id');
			if (index_row == index) {
				if (filter != "") filter = filter + ",";
				filter += form_id;	
			}
			index_row++;
		});

		filter = "\"form\" : {\"in\" : \"" + filter + "\"}";

		return filter;
	},
	getIndex() {
		let row = 0;
		let approval_input_configuration_details = this.get('model.approvalInputConfigurationDetail');
		approval_input_configuration_details.forEach(element => {
			let form_id = element.form.get('id');
			row++;
		});

		row = row - 1;
		return row;
	},
	// refreshBranches() {
	// 	let role_management_dealers = this.get('model.roleManagementDealer');
	// 	let role_management_dealers_branch = this.get('model.roleManagementDealerBranch');
	// 	let dealerToBeDeleted = Array();
	// 	let dealers = Array();

	// 	// ambil daftar dealer yang ada di combobox DEALER
	// 	role_management_dealers.forEach(element => {
	// 		let dealer_id = element.dealer.get('id');
	// 		if(!dealers.includes(dealer_id)) {
	// 			dealers.push(dealer_id);
	// 			dealerToBeDeleted.push(dealer_id);
	// 		}
	// 	});

	// 	// ambil sermua dealerToBeDeleted, jika ditemukan skip, jika tidak maka delete
	// 	role_management_dealers_branch.forEach(element => {
	// 		if(element != undefined) {
	// 			if(element.branch != undefined) {
	// 				if(element.branch.get('dealersId') != undefined) {
	// 					let dealer_id = element.branch.get('dealersId') + "";
	// 					if(!dealerToBeDeleted.includes(dealer_id)) {
	// 						role_management_dealers_branch.removeObject(element);
	// 					}
	// 				}
	// 			}
	// 		}
	// 	});
		
	// 	this.set("model.roleManagementDealerBranch", role_management_dealers_branch);
	// }
});