import DS from 'ember-data'; import {computed} from '@ember/object'; import { inject as service } from '@ember/service'; const { Model } = DS; export default Model.extend({ store : service(), employeeNo: DS.attr('string'), employeeName: DS.attr('string'), documentTypeCode: DS.attr('string'), documentTypeDesc: DS.attr('string'), approvalCode: DS.attr('string'), approvalName: DS.attr('string'), sourceSystemNo: DS.attr('string'), documentNo: DS.attr('string'), requestNo: DS.attr('string'), dataSource: DS.attr('string'), statusId: DS.attr('string'), statusName: DS.attr('string'), syncStatusId: DS.attr('string'), syncStatus: DS.attr('string'), message: DS.attr('string'), customerName: DS.attr('string'), model: DS.attr('string'), dealerCode: DS.attr('string'), dealerName: DS.attr('string'), variant: DS.attr('string'), vinNo: DS.attr('string'), isRead: DS.attr('boolean'), isPushNotification: DS.attr('boolean'), createdBy: DS.attr('string'), updatedBy: DS.attr('string'), createdDate: DS.attr('date'), itemId: DS.attr('string'), vehicleModelNameHoyu: DS.attr('string'), vehicleModelNameDms: DS.attr('string'), vehicleVariantNameHoyu: DS.attr('string'), vehicleVariantNameDms: DS.attr('string'), dealerCodeValue: DS.attr('string'), dealerNameValue: DS.attr('string'), requester:DS.attr('string'), requesterRemark: DS.attr('string'), vehicleModelName: computed('dataSource', function() { if(this.get('dataSource') == 'DMS') { return this.get('vehicleModelNameDms'); } return this.get('vehicleModelNameHoyu'); }), vehicleVariantName: computed('isDMS', function() { if(this.get('isDMS') == true) { return this.get('vehicleVariantNameDms'); } return this.get('vehicleVariantNameHoyu'); }), inboxClassName: computed('documentTypeCode', 'isRead', function() { let cssClassName = 'inbox-header-sales_order'; let defKey = [ 'HOYU_SALES_ORDER_APPROVAL', 'HOYU_ORDER_SPLIT_APPROVAL', 'HOYU_FAKTUR_APPROVAL', 'HOYU_PDI_APPROVAL', 'HOYU_EVENT_APPROVAL', 'DMS_PURCHASE_ORDER', 'DMS_SALES_ORDER', 'DMS_SALES_ORDER_INVOICE_RETURN', 'DMS_ASSIGNMENT_LETTER', 'DMS_WORK_ORDER', 'DMS_WORK_ORDER_INVOICE_RETURN', 'DMS_PDI_REQUEST', 'DMS_STOCK_OPNAME', 'DMS_STOCK_ADJUSTMENT', 'DMS_AGREEMENT_SERVICE', 'DMS_AGREEMENT_SPARE_PART', 'DMS_PRINT_GATE_PASS', 'DMS_TRANSFER_REQUEST', 'DMS_OUTSTANDING_PAYMENT', ]; let defName = [ 'inbox-header-sales_order', 'inbox-header-order_split', 'inbox-header-faktur', 'inbox-header-pdi', 'inbox-header-event', 'inbox-header-purchase_order', 'inbox-header-sales_order', 'inbox-header-sales_order_invoice_return', 'inbox-header-assignment_letter', 'inbox-header-work_order', 'inbox-header-work_order_invoice_return', 'inbox-header-pdi_receipt', 'inbox-header-stock_opname', 'inbox-header-stock_adjustment', 'inbox-header-agreement_service', 'inbox-header-agreement_spare_parts', 'inbox-header-print_gate_pass', 'inbox-header-sales_order_invoice', // transfer request 'inbox-header-work_order', // outstanding payment ]; let docCode = this.get('documentTypeCode'); defKey.forEach(function(item, index) { if(item == docCode) { cssClassName = defName[index]; } }); if(this.get('isRead') == true) { cssClassName = 'inbox-header-is_read'; } return cssClassName; }), routeName: computed('documentTypeCode', function() { let routeURL = ''; let documentTypeCode = this.get('documentTypeCode'); let defKey = [ 'HOYU_SALES_ORDER_APPROVAL', 'HOYU_ORDER_SPLIT_APPROVAL', 'HOYU_FAKTUR_APPROVAL', 'HOYU_PDI_APPROVAL', 'HOYU_EVENT_APPROVAL', 'DMS_PURCHASE_ORDER', 'DMS_SALES_ORDER', 'DMS_SALES_ORDER_INVOICE_RETURN', 'DMS_ASSIGNMENT_LETTER', 'DMS_WORK_ORDER', 'DMS_WORK_ORDER_INVOICE_RETURN', 'DMS_PDI_REQUEST', 'DMS_STOCK_OPNAME', 'DMS_STOCK_ADJUSTMENT', 'DMS_AGREEMENT_SERVICE', 'DMS_AGREEMENT_SPARE_PART', 'DMS_PRINT_GATE_PASS', 'DMS_TRANSFER_REQUEST', 'DMS_OUTSTANDING_PAYMENT', // DOCUMENT_TYPE_KEY ]; let defRoute = [ 'hoyu-sales-order-approval.approval', 'hoyu-order-split-approval.approval', 'hoyu-faktur-approval.approval', 'hoyu-pdi-approval.approval', 'hoyu-event-approval.approval', 'dms-purchase-order.approval', 'dms-sales-order.approval', 'dms-sales-order-invoice-return.approval', 'dms-assignment-letter.approval', 'dms-work-order.approval', 'dms-work-order-invoice-return.approval', 'dms-pdi-request.approval', 'dms-stock-opname.approval', 'dms-stock-adjustment.approval', 'dms-agreement-service.approval', 'dms-agreement-spare-part.approval', 'dms-print-gate-pass.approval', 'dms-transfer-request.approval', 'dms-outstanding-payment.approval', // DOCUMENT_TYPE_ROUTE ]; defKey.forEach(function(item, index){ if(item == documentTypeCode) { routeURL = defRoute[index]; } }); return routeURL; }), });