示例#1
0
    def report_month(self, num_week):
        """
        :param num_week:
        :return:
        """
        month = month.get([datetime.today().month])
        type_launch = TypeLaunch.objects.filter().order_by('-cost_fixo')
        _line = type_launch.count()
        matrix = [['' for coll in range(0)] for row in range(_line + 1)]

        line = 0
        matrix[line].append('cost month %s' %month)
        line += 1
        for tl in type_launch:
            matrix[line].append(tl.type_name)
            line += 1

        line = 0
        matrix[line].append('prevision')
        line += 1
        for tl in type_launch:
            matrix[line].append(tl.value_fixed)
            line += 1

        line = 0
        matrix[line].append('fixo prevision')
        line += 1
        for tl in type_launch:
            if tl.cost_fixo:
                matrix[line].append(tl.value_fixed)
            else:
                matrix[line].append('')
            line += 1

        dif_week = 3  #4 week report_month
        wn = WeekNumber()
        ext = Extract()
        while dif_week >= 0:
            _num_week = (num_week - dif_week)
            _week = wn.get_or_create(_num_week)
            matrix = ext.get_cost_month(matrix, _week, type_launch)
            dif_week -= 1

        worksheet = get_worksheet(num_week, month)
        _range = get_range(matrix)
        send_week(worksheet, _range, matrix)