Example #1
0
    def get_summary_week(self, _week, summary, tp_launch, tot_week_before):
        """
        :param _week:
        :param summary:
        :param tp_launch:
        :param tot_week_before:
        :return:
        """
        first_day = name_day(_week.date_init)
        last_day = name_day(_week.date_final)
        ext = Extract()
        act = Activity()
        value_week = ext.get_total_week(_week, _type=None)
        line = 0
        summary[line].append(first_day)
        summary[line].append("TO")
        summary[line].append(last_day)
        _today = datetime.today()
        summary[line].append("Account Itau day %s %s:%s" %(_today.day, str(_today.hour), str(_today.minute)))
        if value_week.__len__() > 1:
            line = 1
            value_debit = value_week[0]
            value_credit = value_week[1]
            total_week = value_week[2]
            # tot_week_before = value_week[3]
            total_week = tot_week_before - value_debit + value_credit
            if value_credit > value_debit:
                summary[line].append("Result Positive")
            else:
                summary[line].append("Result Negative")
            summary[line].append(str(value_debit).replace('.',','))
            summary[line].append(str(value_credit).replace('.',','))
            summary[line].append(str(total_week).replace('.',','))

            line = 2
            _local = 'local'
            if not settings.DATABASE_LOCAL: _local = 'heroku'
            summary[line].append("Cost Week")
            summary[line].append("Debit" + _local)
            summary[line].append("Credit")
            summary[line].append("Total")
            summary[line].append("Time")
            summary[line].append("Cost per time")
            summary[line].append("Recipe per time")

            line = 3
            for tp in tp_launch:
                tot_week_type = ext.get_total_week(_week, tp.id)
                if tot_week_type.__len__() > 1:
                    value_debit = str(tot_week_type[0]).replace('.',',')
                    value_credit = str(tot_week_type[1]).replace('.',',')
                    value_total = str(tot_week_type[2]).replace('.',',')
                    summary[line].append(tp.type_name)
                    summary[line].append(value_debit)
                    summary[line].append(value_credit)
                    summary[line].append(value_total)

                    time_cost = act.get_time_type_launch(_week, tp.id)
                    if time_cost is None:
                        time_cost = ''
                        cost_per_time = ''
                        receit_per_time = ''
                    else:
                        _cost_type = str_to_float(value_debit)
                        cost_per_time = round(_cost_type / float(time_cost), 2)
                        _receit_type = str_to_float(value_credit)
                        receit_per_time = round(_receit_type / float(time_cost), 2)

                        time_cost = str(time_cost).replace('.',',')
                        cost_per_time = str(cost_per_time).replace('.',',')
                        receit_per_time = str(receit_per_time).replace('.',',')
                    summary[line].append(time_cost)
                    summary[line].append(cost_per_time)
                    summary[line].append(receit_per_time)
                    line += 1
        return summary