def __init__(self, sheet_index, base_name, xl_out_path, app_echo=True, save_per_worker=False):
        super(LaborHourDataXLWriter, self).__init__(xl_out_path, app_echo, save_per_worker)
        self.base_name = base_name

        self.lh_sheet = self.xl_app.Sheets((base_name + config.lh_suffix).decode('utf-8').encode('gbk'))
        self.w_sheet = self.xl_app.Sheets((base_name + config.w_suffix).decode('utf-8').encode('gbk'))
        self.m_sheet = self.xl_app.Sheets(u'首页'.encode('gbk'))

        xl_operator = ExcelOperator(config.XLS_PATH)
        self.worker_dict_x = dict(xl_operator.get_id_name_pairs_with_row_number(sheet_index))
        self.main_worker_dict_x = dict(xl_operator.get_id_name_pairs_with_row_number(0))

        self.write_dates()
Beispiel #2
0
    def __init__(self, sheet_index, base_name, xl_out_path, app_echo=True, save_per_worker=False):
        super(PerformanceXLWriter, self).__init__(xl_out_path, app_echo, save_per_worker)

        self.perf_sheet = self.xl_app.Sheets((base_name + config.p_suffix).decode('utf-8').encode('gbk'))

        xl_operator = ExcelOperator(config.XLS_PATH)
        self.worker_dict_x = dict(xl_operator.get_id_name_pairs_with_row_number(sheet_index))
        self.main_worker_dict_x = dict(xl_operator.get_id_name_pairs_with_row_number(0))

        worker_dict = xl_operator.get_id_name_pairs(sheet_index)
        self.perf_data_provider = PerformanceDataProvider('',
                                                          dict(worker_dict),dict(worker_dict),
                                                          dict(xl_operator.get_attended_days_count_pairs()),
                                                          dict(xl_operator.get_work_performance(
                                                              config.p_index_offset + sheet_index
                                                          )))
Beispiel #3
0
    def gen_table_cont(self):
        return super(PerformanceDataProvider, self).table_cont.format(
            date_colspan=11,
            sums_colspan=2,
            title_colspan=15,
            table_title=self.table_title,
            table_headers=self.table_headers,
            table_rows_contents='\n'.join(self.gen_worker_rows())
        )



if __name__ == '__main__':
    config.db_path = '..\\this_month.db'
    for title, index in TITLE_INDEX_PAIRS:
        xls_obj = ExcelOperator('..\\data.xls')
        worker_dict = xls_obj.get_id_name_pairs(index)

        for num, d in enumerate(misc.take(worker_dict, by=43)):
            view = ViewWriter(PerformanceDataProvider(title,
                                                      dict(worker_dict),
                                                      dict(worker_dict),
                                                      dict(xls_obj.get_attended_days_count_pairs()),
                                                      dict(xls_obj.get_work_performance(config.p_index_offset + index))))

            with open('%s%s.html' % (num, title.decode('utf-8')), 'w') as f:
                print >> f, view