import Route from '@ember/routing/route'; import { inject as service } from '@ember/service'; import BaseRoute from 'hino-hearts/routes/base'; export default BaseRoute.extend({ hoyuFakturApproval : service(), hoyuFakturApprovalData : service(), hoyuFakturApprovalListData: service(), hoyuFakturApprovalAttachmentData: service(), store : service(), session: service(), approvalInboxData: service(), init() { this._super(...arguments); }, model(params) { this.set('session.data.prevRoute', this.get('routeName')); this.set('session.data.prevId', params.id); this.set('session.data.prevDetailAccount','hoyu-faktur-approval.approval'); this.set('session.data.prevDetailAccountId',params.id); this.hoyuFakturApproval.setModel(null); let data = this.hoyuFakturApprovalData.getData(params.id, { include: 'hoyu-faktur-approval-list,hoyu-faktur-approval-attachment', reload: true }); data.then(response => { response.set("approvalActionType", "approve"); this.hoyuFakturApproval.setModel(response); // get inbox versi terakhir let inbox = this.approvalInboxData.getData(response.sourceSystemNo, {adapterOptions: { query: { last_inbox: true, doc_type: 'HOYU_FAKTUR_APPROVAL' } } }); this.hoyuFakturApproval.setInbox(inbox); this.hoyuFakturApprovalListData.getList({include: 'hoyu-faktur-approval', filter:{"hoyuFakturApproval" : {"id" : response.id}}}).then(responseDetail => { this.hoyuFakturApproval.clearDetail("hoyuFakturApprovalList"); responseDetail.forEach(item => { this.hoyuFakturApproval.addRow(item, "hoyuFakturApprovalList"); }); }); this.hoyuFakturApprovalAttachmentData.getList({include: 'attachment,hoyu-faktur-approval', filter:{"hoyuFakturApproval" : {"id" : response.id}}}).then(responseDetail => { this.hoyuFakturApproval.clearDetail("hoyuFakturApprovalAttachment"); responseDetail.forEach(item => { this.hoyuFakturApproval.addRow(item, "hoyuFakturApprovalAttachment"); }); }); return response; }); this.set('data', data); return {data: data}; }, setupController(controller, model) { this._super(...arguments); controller.set('model', this.get('data')); controller.set('errorMessages', null); }, templateName : 'hoyu-faktur-approval/input-approval'});