feat(route.index): can edit fields
gitea/salix/pipeline/head There was a failure building this commit
Details
gitea/salix/pipeline/head There was a failure building this commit
Details
This commit is contained in:
parent
980ac50ba9
commit
3e43bf2024
|
@ -1,57 +1,129 @@
|
|||
<vn-auto-search
|
||||
model="model">
|
||||
</vn-auto-search>
|
||||
<vn-data-viewer
|
||||
model="model"
|
||||
class="vn-w-lg vn-mb-xl">
|
||||
<div class="vn-w-xl">
|
||||
<vn-card>
|
||||
<vn-table model="model">
|
||||
<vn-thead>
|
||||
<vn-tr>
|
||||
<vn-th shrink>
|
||||
<smart-table
|
||||
model="model"
|
||||
options="$ctrl.smartTableOptions"
|
||||
expr-builder="$ctrl.exprBuilder(param, value)">
|
||||
<slot-table>
|
||||
<table model="model">
|
||||
<thead>
|
||||
<tr>
|
||||
<th shrink>
|
||||
<vn-multi-check
|
||||
model="model">
|
||||
</vn-multi-check>
|
||||
</vn-th>
|
||||
<vn-th field="id" number>Id</vn-th>
|
||||
<vn-th field="workerFk">Worker</vn-th>
|
||||
<vn-th field="agencyName">Agency</vn-th>
|
||||
<vn-th field="vehiclePlateNumber">Vehicle</vn-th>
|
||||
<vn-th field="created" shrink-date>Date</vn-th>
|
||||
<vn-th field="m3" number>m³</vn-th>
|
||||
<vn-th field="description">Description</vn-th>
|
||||
<vn-th field="started">Start</vn-th>
|
||||
<vn-th field="finished">Finish</vn-th>
|
||||
<vn-th shrink></vn-th>
|
||||
</vn-tr>
|
||||
</vn-thead>
|
||||
<vn-tbody>
|
||||
<a ng-repeat="route in model.data"
|
||||
</th>
|
||||
<th field="id" number>
|
||||
<span translate>Id</span>
|
||||
</th>
|
||||
<th field="workerFk">
|
||||
<span translate>Worker</span>
|
||||
</th>
|
||||
<th field="agencyName">
|
||||
<span translate>Agency</span>
|
||||
</th>
|
||||
<th field="vehiclePlateNumber">
|
||||
<span translate>Vehicle</span>
|
||||
</th>
|
||||
<th field="created" shrink-date>
|
||||
<span translate>Date</span>
|
||||
</th>
|
||||
<th field="m3" number>
|
||||
<span translate>m³</span>
|
||||
</th>
|
||||
<th field="description">
|
||||
<span translate>Description</span>
|
||||
</th>
|
||||
<th field="started">
|
||||
<span translate>Hour started</span>
|
||||
</th>
|
||||
<th field="finished">
|
||||
<span translate>Hour finished</span>
|
||||
</th>
|
||||
<th shrink></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr ng-repeat="route in model.data"
|
||||
class="clickable vn-tr search-result"
|
||||
ui-sref="route.card.summary({id: {{::route.id}}})"
|
||||
ng-attr-id="{{::route.id}}" vn-droppable="$ctrl.onDrop($event)">
|
||||
<vn-td shrink>
|
||||
<td shrink>
|
||||
<vn-check
|
||||
ng-model="route.checked"
|
||||
vn-click-stop>
|
||||
</vn-check>
|
||||
</vn-td>
|
||||
<vn-td number>{{::route.id | dashIfEmpty}}</vn-td>
|
||||
<vn-td expand>
|
||||
<span
|
||||
class="link"
|
||||
vn-click-stop="workerDescriptor.show($event, route.workerFk)">
|
||||
{{::route.workerUserName}}
|
||||
</span>
|
||||
</vn-td>
|
||||
<vn-td>{{::route.agencyName | dashIfEmpty}}</vn-td>
|
||||
<vn-td>{{::route.vehiclePlateNumber | dashIfEmpty}}</vn-td>
|
||||
<vn-td shrink-date>{{::route.created | dashIfEmpty | date:'dd/MM/yyyy'}}</vn-td>
|
||||
<vn-td number>{{::route.m3 | dashIfEmpty}}</vn-td>
|
||||
<vn-td>{{::route.description | dashIfEmpty}}</vn-td>
|
||||
<vn-td expand>{{::route.started | dashIfEmpty | date:'dd/MM/yyyy HH:mm'}}</vn-td>
|
||||
<vn-td expand>{{::route.finished | dashIfEmpty | date:'dd/MM/yyyy HH:mm'}}</vn-td>
|
||||
<vn-td>
|
||||
</td>
|
||||
<td number>
|
||||
<a
|
||||
vn-tooltip="Go to route"
|
||||
ui-sref="route.card.summary({id: {{::route.id}}})">
|
||||
{{::route.id | dashIfEmpty}}
|
||||
</a>
|
||||
</td>
|
||||
<td>
|
||||
<vn-autocomplete
|
||||
ng-model="route.workerFk"
|
||||
url="Workers/activeWithInheritedRole"
|
||||
show-field="nickname"
|
||||
search-function="{firstName: $search}"
|
||||
value-field="id"
|
||||
where="{role: 'employee'}"
|
||||
on-change="$ctrl.updateAttributes(route)"
|
||||
vn-click-stop>
|
||||
<tpl-item>
|
||||
<div>{{name}} - {{nickname}}</div>
|
||||
</tpl-item>
|
||||
</vn-autocomplete>
|
||||
</td>
|
||||
<td expand>
|
||||
<vn-autocomplete
|
||||
ng-model="route.agencyModeFk"
|
||||
url="AgencyModes"
|
||||
show-field="name"
|
||||
value-field="id"
|
||||
on-change="$ctrl.updateAttributes(route)"
|
||||
vn-click-stop>
|
||||
</vn-autocomplete>
|
||||
</td>
|
||||
<td expand>
|
||||
<vn-autocomplete
|
||||
ng-model="route.vehicleFk"
|
||||
url="Vehicles"
|
||||
show-field="numberPlate"
|
||||
value-field="id"
|
||||
on-change="$ctrl.updateAttributes(route)"
|
||||
vn-click-stop>
|
||||
</vn-autocomplete>
|
||||
</td >
|
||||
<td>
|
||||
<vn-date-picker
|
||||
ng-model="route.created"
|
||||
on-change="$ctrl.updateAttributes(route)">
|
||||
</vn-horizontal>
|
||||
</td>
|
||||
<td number>{{::route.m3 | dashIfEmpty}}</td>
|
||||
<td>
|
||||
<vn-textfield
|
||||
ng-model="route.description"
|
||||
on-change="$ctrl.updateAttributes(route)">
|
||||
</vn-textfield>
|
||||
</td>
|
||||
<td expand>
|
||||
<vn-input-time
|
||||
ng-model="route.started"
|
||||
on-change="$ctrl.updateAttributes(route)">
|
||||
</vn-input-time>
|
||||
</td>
|
||||
<td expand>
|
||||
<vn-input-time
|
||||
ng-model="route.finished"
|
||||
on-change="$ctrl.updateAttributes(route)">
|
||||
</vn-input-time>
|
||||
</td>
|
||||
<td>
|
||||
<vn-icon-button
|
||||
vn-click-stop="$ctrl.showTicketPopup(route)"
|
||||
vn-tooltip="Añadir tickets"
|
||||
|
@ -62,12 +134,14 @@
|
|||
vn-tooltip="Preview"
|
||||
icon="preview">
|
||||
</vn-icon-button>
|
||||
</vn-td>
|
||||
</a>
|
||||
</vn-tbody>
|
||||
</vn-table>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</slot-table>
|
||||
</smart-table>
|
||||
</vn-card>
|
||||
</vn-data-viewer>
|
||||
</div>
|
||||
|
||||
<vn-popup vn-id="summary">
|
||||
<vn-route-summary
|
||||
|
|
|
@ -102,6 +102,26 @@ export default class Controller extends Section {
|
|||
throw error;
|
||||
});
|
||||
}
|
||||
|
||||
updateAttributes(route) {
|
||||
if (route.started == null || route.finished == null)
|
||||
return this.vnApp.showError(this.$t('You must select a valid time'));
|
||||
if (route.created == null)
|
||||
return this.vnApp.showError(this.$t('You must select a valid date'));
|
||||
const params = {
|
||||
workerFk: route.workerFk,
|
||||
agencyModeFk: route.agencyModeFk,
|
||||
vehicleFk: route.vehicleFk,
|
||||
created: route.created,
|
||||
description: route.description,
|
||||
started: route.started,
|
||||
finished: route.finished
|
||||
};
|
||||
const query = `Routes/${route.id}/`;
|
||||
this.$http.patch(query, params).then(res => {
|
||||
this.vnApp.showSuccess(this.$t('Data saved!'));
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
Controller.$inject = ['$element', '$scope', 'vnReport'];
|
||||
|
|
|
@ -3,5 +3,8 @@ Download selected routes as PDF: Descargar rutas seleccionadas como PDF
|
|||
Clone selected routes: Clonar rutas seleccionadas
|
||||
The date can't be empty: La fecha no puede estar vacía
|
||||
Starting date: Fecha de inicio
|
||||
Finish: Fin
|
||||
Start: Inicio
|
||||
Hour started: Hora inicio
|
||||
Hour finished: Hora fin
|
||||
Go to route: Ir a la ruta
|
||||
You must select a valid time: Debe seleccionar una hora válida
|
||||
You must select a valid date: Debe seleccionar una fecha válida
|
||||
|
|
Loading…
Reference in New Issue