hino / app / routes / approval-input-configuration / edit.js
edit.js
Raw
import Route from '@ember/routing/route';
import { inject as service } from '@ember/service';

import BaseRoute from 'hino-hearts/routes/base';

export default BaseRoute.extend({
	approvalInputConfiguration : service(),
	approvalInputConfigurationData : service(),
	approvalInputConfigurationDetailData: service(),
	approvalInputConfigurationDetailActionData: service(),
	store : service(),

	init() {
		this._super(...arguments);
	},

	async model(params) {
		this.approvalInputConfiguration.setModel(null);
		return await this.approvalInputConfigurationData.getData(params.id, { include: 'approval-input-configuration-detail,approval-input-configuration-detail-action' })
		.then(async response => {
			this.approvalInputConfiguration.setModel(response);
			await this.approvalInputConfigurationDetailData.getList({include: 'approval-input-configuration,form,field', filter:{"approvalInputConfiguration" : {"id" : response.id}}}).then(responseDetail => {
				this.approvalInputConfiguration.clearDetail("approvalInputConfigurationDetail");
				responseDetail.forEach(item => {
					this.approvalInputConfiguration.addRow(item, "approvalInputConfigurationDetail");
				});
			});
			await this.approvalInputConfigurationDetailActionData.getList({include: 'approval-input-configuration,form', filter:{"approvalInputConfiguration" : {"id" : response.id}}}).then(responseDetail => {
				this.approvalInputConfiguration.clearDetail("approvalInputConfigurationDetailAction");
				responseDetail.forEach(item => {
					this.approvalInputConfiguration.addRow(item, "approvalInputConfigurationDetailAction");
				});
			});
			return response;
		});
	},

	setupController(controller) {
		this._super(...arguments);
		controller.set('errorMessages', null);
	},

	templateName : 'approval-input-configuration/input'});