示例#1
0
def hr_position(src_path, dst_path, dictionary):
    dst_file = dst_path + 'hr_position.csv'
    try:
        f = open(dst_file, 'w+')
        position = Position()
        position.write_header(f)
        dataset = dbf.Dbf(src_path + 'PRK.DBF')
        position_list = set()
        for record in dataset:
            department_code = record['PDR']
            if (department_code):
                department_id = dictionary.get_DepartmentID(department_code)
                dictPosition_id = record['DOL']
                if (department_id and dictPosition_id):
                    position.ID = int(department_id) * 10000 + dictPosition_id
                    if (position.ID in position_list):
                        continue
                    position_list.add(position.ID)
                    position.code = str(dictPosition_id)
                    position.name = dictionary.get_DictPositionName(
                        position.code)
                    position.psCategory = ''
                    position.positionType = ''
                    position.description = ''
                    position.write_record(f)
        dataset.close()
    except:
        print 'Error making ', dst_file, sys.exc_info()[1]