diff --git a/modules/travel/back/models/travel.json b/modules/travel/back/models/travel.json
index fd881dd103..b4f1545255 100644
--- a/modules/travel/back/models/travel.json
+++ b/modules/travel/back/models/travel.json
@@ -1,6 +1,9 @@
{
"name": "Travel",
- "base": "VnModel",
+ "base": "Loggable",
+ "log": {
+ "model":"TravelLog"
+ },
"options": {
"mysql": {
"table": "travel"
@@ -32,12 +35,18 @@
},
"m3": {
"type": "Number"
+ },
+ "agencyModeFk": {
+ "type": "Number",
+ "mysql": {
+ "columnName": "agencyFk"
+ }
}
},
"relations": {
"agency": {
"type": "belongsTo",
- "model": "Agency",
+ "model": "AgencyMode",
"foreignKey": "agencyFk"
},
"warehouseIn": {
diff --git a/modules/travel/front/basic-data/index.html b/modules/travel/front/basic-data/index.html
new file mode 100644
index 0000000000..b85168ac32
--- /dev/null
+++ b/modules/travel/front/basic-data/index.html
@@ -0,0 +1,72 @@
+
+
+
+
diff --git a/modules/travel/front/basic-data/index.js b/modules/travel/front/basic-data/index.js
new file mode 100644
index 0000000000..7406598b04
--- /dev/null
+++ b/modules/travel/front/basic-data/index.js
@@ -0,0 +1,25 @@
+import ngModule from '../module';
+
+class Controller {
+ constructor($scope) {
+ this.$ = $scope;
+ }
+
+ onSubmit() {
+ return this.$.watcher.submit().then(() => {
+ this.card.reload();
+ });
+ }
+}
+Controller.$inject = ['$scope'];
+
+ngModule.component('vnTravelBasicData', {
+ template: require('./index.html'),
+ controller: Controller,
+ bindings: {
+ travel: '<'
+ },
+ require: {
+ card: '^vnTravelCard'
+ }
+});
diff --git a/modules/travel/front/basic-data/index.spec.js b/modules/travel/front/basic-data/index.spec.js
new file mode 100644
index 0000000000..ed5c287b1d
--- /dev/null
+++ b/modules/travel/front/basic-data/index.spec.js
@@ -0,0 +1,28 @@
+import './index.js';
+
+describe('Travel Component vnTravelBasicData', () => {
+ let controller;
+ let $scope;
+ beforeEach(angular.mock.module('travel', $translateProvider => {
+ $translateProvider.translations('en', {});
+ }));
+
+ beforeEach(angular.mock.inject(($componentController, $rootScope) => {
+ $scope = $rootScope.$new();
+ controller = $componentController('vnTravelBasicData', $scope);
+ controller.card = {reload: () => {}};
+ controller.$.watcher = {submit: () => {}};
+ }));
+
+ describe('onSubmit()', () => {
+ it('should call the card reload method after the watcher submits', done => {
+ spyOn(controller.card, 'reload');
+ spyOn(controller.$.watcher, 'submit').and.returnValue(Promise.resolve());
+
+ controller.onSubmit().then(() => {
+ expect(controller.card.reload).toHaveBeenCalledWith();
+ done();
+ }).catch(done.fail);
+ });
+ });
+});
diff --git a/modules/travel/front/basic-data/locale/es.yml b/modules/travel/front/basic-data/locale/es.yml
new file mode 100644
index 0000000000..d956756122
--- /dev/null
+++ b/modules/travel/front/basic-data/locale/es.yml
@@ -0,0 +1 @@
+Undo changes: Deshacer cambios
diff --git a/modules/travel/front/card/index.js b/modules/travel/front/card/index.js
index 677e944c21..b67902e169 100644
--- a/modules/travel/front/card/index.js
+++ b/modules/travel/front/card/index.js
@@ -6,16 +6,6 @@ export default class Controller {
this.$stateParams = $stateParams;
this.travel = null;
this.filter = {
- fields: [
- 'id',
- 'ref',
- 'warehouseInFk',
- 'warehouseOutFk',
- 'shipped',
- 'landed',
- 'totalEntries'
- ],
-
where: {id: $stateParams.id},
include: [
{
diff --git a/modules/travel/front/index.js b/modules/travel/front/index.js
index 82795940d8..1017a431b8 100644
--- a/modules/travel/front/index.js
+++ b/modules/travel/front/index.js
@@ -5,3 +5,5 @@ import './search-panel';
import './descriptor';
import './card';
import './summary';
+import './basic-data';
+import './log';
diff --git a/modules/travel/front/routes.json b/modules/travel/front/routes.json
index 0707858311..55643c9371 100644
--- a/modules/travel/front/routes.json
+++ b/modules/travel/front/routes.json
@@ -3,6 +3,9 @@
"name": "Travels",
"validations": true,
"dependencies": ["worker"],
+ "menu": [
+ {"state": "travel.card.basicData", "icon": "settings"},
+ {"state": "travel.card.log", "icon": "history"}],
"routes": [
{
"url": "/travel",
@@ -29,6 +32,20 @@
"params": {
"travel": "$ctrl.travel"
}
+ }, {
+ "url": "/basic-data",
+ "state": "travel.card.basicData",
+ "component": "vn-travel-basic-data",
+ "description": "Basic data",
+ "acl": ["buyer","logistic"],
+ "params": {
+ "travel": "$ctrl.travel"
+ }
+ }, {
+ "url" : "/log",
+ "state": "travel.card.log",
+ "component": "vn-travel-log",
+ "description": "Log"
}
]
}
\ No newline at end of file