Backfill site worksheet records from paymonth data
This commit is contained in:
@@ -2293,7 +2293,49 @@ def get_site_worksheet_records_by_days(conn, start_date, end_date, member_nos, r
|
|||||||
progress['processedTargets'] = month_idx
|
progress['processedTargets'] = month_idx
|
||||||
|
|
||||||
if progress is not None:
|
if progress is not None:
|
||||||
progress['phase'] = '달력 테이블 정리'
|
progress['phase'] = '월별 근무현황 보강'
|
||||||
|
identity_rows = conn.execute(
|
||||||
|
f'''
|
||||||
|
SELECT m.MemberNo, IFNULL(m.korName, '') AS korName, IFNULL(i.juminno, '') AS juminno
|
||||||
|
FROM member m
|
||||||
|
JOIN member_site_identity i ON i.memberNo = m.MemberNo
|
||||||
|
WHERE m.MemberNo IN ({ph})
|
||||||
|
AND IFNULL(m.korName, '') <> ''
|
||||||
|
AND IFNULL(i.juminno, '') <> ''
|
||||||
|
''',
|
||||||
|
member_nos
|
||||||
|
).fetchall()
|
||||||
|
for idx, (identity_member_no, identity_name, juminno) in enumerate(identity_rows, start=1):
|
||||||
|
if progress is not None:
|
||||||
|
progress.update({
|
||||||
|
'phase': '월별 근무현황 보강',
|
||||||
|
'processedMembers': idx - 1,
|
||||||
|
'totalMembers': len(identity_rows),
|
||||||
|
'currentProjectCode': '',
|
||||||
|
'currentYearMonth': _as_text(end_date)[:7],
|
||||||
|
'currentWorkDate': end_date,
|
||||||
|
})
|
||||||
|
try:
|
||||||
|
added += insert_construct_paymonth_records(
|
||||||
|
conn,
|
||||||
|
s,
|
||||||
|
identity_member_no,
|
||||||
|
identity_name,
|
||||||
|
juminno,
|
||||||
|
end_date,
|
||||||
|
start_date,
|
||||||
|
end_date,
|
||||||
|
)
|
||||||
|
conn.commit()
|
||||||
|
except Exception:
|
||||||
|
# Project/day crawl is the primary source; paymonth is a best-effort gap filler.
|
||||||
|
pass
|
||||||
|
if progress is not None:
|
||||||
|
progress.update({
|
||||||
|
'phase': '달력 테이블 정리',
|
||||||
|
'processedMembers': len(identity_rows),
|
||||||
|
'added': added,
|
||||||
|
})
|
||||||
conn.commit()
|
conn.commit()
|
||||||
cleanup_site_records_after_retire(conn)
|
cleanup_site_records_after_retire(conn)
|
||||||
rebuild_work_calendar_tables(conn)
|
rebuild_work_calendar_tables(conn)
|
||||||
|
|||||||
Reference in New Issue
Block a user