#!/usr/bin/python # coding=utf-8 from intra import * import datetime import time def unf(): unf1 = unf_sort(-30,-7) dr1 = unf1['dr'] resident1 = unf1['resident'] division1 = unf1['division'] unf2 = unf_sort(-365,-31) dr2 = unf2['dr'] resident2 = unf2['resident'] division2 = unf2['division'] length = max(len(dr1), len(resident1), len(dr2), len(resident2)) result=[] result.append(['主治醫師','科別','份數','住院醫師','份數','主治醫師','科別','份數','住院醫師','份數']) d1 = 0 r1 = 0 d2 = 0 r2 = 0 for i in range(length): r = [] if i < len(dr1): r.append(dr1[i][0]) if vs.has_key(dr1[i][0]): r.append(vs[dr1[i][0]]) else: r.append('') r.append(dr1[i][1]) d1 += dr1[i][1] else: r.append('') r.append('') r.append('') if i < len(resident1): r.append(resident1[i][0]) r.append(resident1[i][1]) r1 += resident1[i][1] else: r.append('') r.append('') if i < len(dr2): r.append(dr2[i][0]) if vs.has_key(dr2[i][0]): r.append(vs[dr2[i][0]]) else: r.append('') r.append(dr2[i][1]) d2 += dr2[i][1] else: r.append('') r.append('') r.append('') if i < len(resident2): r.append(resident2[i][0]) r.append(resident2[i][1]) r2 += resident2[i][1] else: r.append('') r.append('') result.append(r) # output = open('/home/xfr/mysite/site_media/unf.html','w') output = open('/SharedDocs/html/media.ntuh.net/unf.html','w') print >> output, """ 外科部病歷未完成 """ print >> output, "" print >> output, "" % time.asctime() print >> output, "" % ('7至30日','超過30日') for r in result: print >> output ,"" for c in r: print >> output, "" % c print >> output ,"" print >> output, "" print >> output, "" print >> output, "" % d1 print >> output, "" % r1 print >> output, "" % d2 print >> output, "" % r2 print >> output, "" print >> output, "
%s
%s%s
%s
---
總計%i總計%i總計%i總計%i
" print >> output, "
" print >> output, "" div1 = dict(division1) div2 = dict(division2) for div in div1.keys(): if not div2.has_key(div): div2[div] = 0 for div in div2.keys(): if not div1.has_key(div): div1[div] = 0 div3 = {} for div in div1.keys(): div3[div] = div1[div] + div2[div] # print div1 # print div2 # print div3 division_sort = sorted(list(div3), key=lambda x: -div3[x]) # print division_sort print >> output, "" for div in division_sort: print >> output, "" % div print >> output, "" print >> output, "" for div in division_sort: print >> output, "" % div1[div] print >> output, "" print >> output, "" for div in division_sort: print >> output, "" % div2[div] print >> output, "" print >> output, "" for div in division_sort: print >> output, "" % div3[div] print >> output, "" print >> output, "
%s
7至30日%s
超過30日%s
合計%s
" print >> output, "" output.close() return result def unf_month(): day = datetime.date.today().day EndDate = datetime.date.today() + datetime.timedelta(days=-day) unf1 = unf_sort(-365,-day) dr1 = unf1['dr'] resident1 = unf1['resident'] division1 = unf1['division'] length = max(len(dr1), len(resident1)) result=[] result.append(['主治醫師','科別','份數','住院醫師','份數']) d1 = 0 r1 = 0 for i in range(length): r = [] if i < len(dr1): r.append(dr1[i][0]) if vs.has_key(dr1[i][0]): r.append(vs[dr1[i][0]]) else: r.append('') r.append(dr1[i][1]) d1 += dr1[i][1] else: r.append('') r.append('') r.append('') if i < len(resident1): r.append(resident1[i][0]) r.append(resident1[i][1]) r1 += resident1[i][1] else: r.append('') r.append('') result.append(r) # output = open('/home/xfr/mysite/site_media/unf.html','w') output = open('/SharedDocs/html/media.ntuh.net/unf_month.html','w') print >> output, """ 上月外科部病歷未完成 """ print >> output, "" print >> output, "" % time.asctime() print >> output, "" % EndDate for r in result: print >> output ,"" for c in r: print >> output, "" % c print >> output ,"" print >> output, "" print >> output, "" print >> output, "" % d1 print >> output, "" % r1 print >> output, "" print >> output, "
%s
%s前
%s
---
總計%i總計%i
" print >> output, "
" print >> output, "" div1 = dict(division1) # print div1 # print div2 # print div3 division_sort = sorted(list(div1), key=lambda x: -div1[x]) # print division_sort print >> output, "" for div in division_sort: print >> output, "" % div print >> output, "" print >> output, "" for div in division_sort: print >> output, "" % div1[div] print >> output, "" print >> output, "
%s
合計%s
" print >> output, "" output.close() return result unf() unf_month()