Commit ea1e70c6 authored by Stephane Bouvry's avatar Stephane Bouvry
Browse files

Fix : Affichage des validations

parent 93c9fb7a
Loading
Loading
Loading
Loading
+2 −2
Changes for module/Oscar/src/Oscar/Controller/TimesheetController.php: 2 added lines, 2 removed lines.
Original line number Diff line number Diff line
@@ -562,8 +562,8 @@ class TimesheetController extends AbstractOscarController
            }

            // Période
            $start  = $activity->getDateStart()->format('Y-m');
            $end    = $activity->getDateEnd()->format('Y-m');
            $start  = $activity->getDateStart()->format('Y');
            $end    = $activity->getDateEnd()->format('Y');



+1 −1
Changes for module/Oscar/src/Oscar/Entity/ValidationPeriodRepository.php: 1 added line, 1 removed line.
Original line number Diff line number Diff line
@@ -275,7 +275,7 @@ class ValidationPeriodRepository extends EntityRepository

        $rsm = new ResultSetMapping();
        $result = $this->getEntityManager()->getConnection()->fetchAll("SELECT CONCAT(v.year, '-', v.month) as period, * 
	FROM validationperiod as v WHERE v.declarer_id IN(".implode(',', $personsIds).") AND CONCAT(v.year, '-', v.month) >= '$start' AND CONCAT(v.year, '-', v.month) <= '$end'");
	FROM validationperiod as v WHERE v.declarer_id IN(".implode(',', $personsIds).") AND v.year >= $start AND v.year <= $end");

        /*
    SELECT p.id as person_id, CONCAT(p.firstname, ' ', p.lastname) as displayname, to_char(t.datefrom, 'YYYY-MM') as period, t.activity_id, COALESCE(pr.acronym, t.label) as context, CASE WHEN t.activity_id > 0 THEN 'wp' ELSE 'other' END as type, SUM(EXTRACT(EPOCH from dateto - datefrom) / 3600) as duration FROM timesheet t INNER JOIN person p ON p.id = t.person_id LEFT JOIN activity a ON t.activity_id = a.id LEFT JOIN project pr ON pr.id = a.project_id WHERE p.id IN(".implode(',', $personIds).") GROUP BY p.id, period, context, activity_id ORDER BY p.lastname, period
+6 −3
Changes for module/Oscar/src/Oscar/Service/TimesheetService.php: 6 added lines, 3 removed lines.
Original line number Diff line number Diff line
@@ -1178,12 +1178,12 @@ class TimesheetService implements ServiceLocatorAwareInterface, EntityManagerAwa
        return $this->getTimesheetRepository()->getDatasDeclarerSynthesis($personIds);
    }

    public function getDatasValidationPersonsPeriod($personsIds, $start, $end){
    public function getDatasValidationPersonsPeriod($personsIds, $yearStart, $yearEnd){
        $datas = [];

        $this->getLogger()->debug("Validations entre $start et $end");
        $this->getLogger()->debug("Validations entre $yearStart et $yearEnd");

        $validations = $this->getValidationPeriodRepository()->getDatasValidationPersonsPeriod($personsIds, $start,$end);
        $validations = $this->getValidationPeriodRepository()->getDatasValidationPersonsPeriod($personsIds, $yearStart,$yearEnd);

        $this->getLogger()->debug("Validations : " . count($validations));

@@ -1197,6 +1197,9 @@ class TimesheetService implements ServiceLocatorAwareInterface, EntityManagerAwa
            $object_id = $validation['object_id'];
            $dateSend = $validation['datesend'];

            $this->getLogger()->debug("Validation $objectgroup > $object > $object_id : $period");


            if(!array_key_exists($period, $datas)){
                $datas[$period] = [];
            }
+18 −4
Changes for module/Oscar/view/oscar/timesheet/synthesis-all.phtml: 18 added lines, 4 removed lines.
Original line number Diff line number Diff line
<div id="app">
    <section class="container">
        <pre>{{ validations }}</pre>
        <h1>Déclaration pour <strong>[<?= $activity->getAcronym() ?>]</strong> <em><?= $activity->getLabel() ?></em>
        </h1>
        <div class="overlay" v-if="infosPerson">
@@ -130,7 +129,7 @@
                            <strong v-if="d.type == 'wp'">
                                <i class="icon-cubes"></i> {{ d.context }}

                                <strong v-if="d.validation" class="cartouche default"
                                <strong v-if="d.validation" class="cartouche default xs"
                                        :class="'status-' + d.validation.status">
                                    <i :class="'icon-' + d.validation.status"></i>
                                    {{ d.validation.status | statusText }}</strong>
@@ -138,7 +137,7 @@
                            <em v-else>
                                <i :class="'icon-'+d.context"></i> {{ d.context | formatHorsLot }}

                                <strong v-if="d.validation" class="cartouche default"
                                <strong v-if="d.validation" class="cartouche default xs"
                                        :class="'status-' + d.validation.status">
                                    <i :class="'icon-' + d.validation.status"></i>
                                    {{ d.validation.status | statusText}}</strong>
@@ -216,6 +215,22 @@
        padding-left: 2em;
        display: flex;
    }

    .cartouche.status-send-prj {
        background-color: #1b7cc4;
    }
    .cartouche.status-send-sci {
        background-color: #20bcc4;
    }
    .cartouche.status-send-adm {
        background-color: #1fc48f;
    }
    .cartouche.status-valid {
        background-color: #189c17;
    }
    .cartouche.status-reject {
        background-color: #a6091a;
    }
</style>
<script>
    require(['vue', 'vue-resource'], function (Vue, VueResource) {
@@ -237,7 +252,6 @@
            '12': 'Décembre'
        };
        

        Vue.filter('formatDuration', function (heure) {
            var h = Math.floor(heure);
            var m = Math.round((heure - h) * 60);