Beispiel #1
0
def open_pform(SS, request):
    """ Форма Сотрудник СМП (просмотр, редактирование, создание)	"""
    #	print	"<div id='prs_form' type='hidden' style='top: 160px; left: 500px; width: 600px; min-height: 400px; border: thin solid #668; background-color: #efe; position: absolute;'>"
    print "open_pform", request
    opts = {}
    obj = {}
    pcod = request.get('pcod')
    query = """ SELECT p.*, s.name AS sname, ps.name AS psname, c.name AS cname FROM person_sp p
		JOIN sp_station s ON n_pst = s.cod JOIN sp_post ps ON n_post = ps.cod JOIN sp_category c ON n_catg = c.cod
		WHERE p.cod = %s
		""" % pcod
    #	print query
    drow = dboo.get_dict(query)
    '''
	print drow.keys()
	['n_catg', 'stat', 'n_pst', 'mdate', 'name', 'smena', 'n_post', 'snils', 'psname', 'sname', 'cod', 'cname']
	'''
    obj['title'] = "Сотрудник СМП"
    sform = request.get('FORM')
    obj['IS_UPDATE'] = True
    cod = drow['cod']
    obj['stat'] = slist_stat(sform, drow['cod'], drow['stat'])
    if sform == 'view':
        obj['UPDATE'] = """<input type='button' class='butt' value='Править' onclick="set_shadow('%s&FORM=edit&pcod=%s')"> """ % (
            request.get('shstat'), pcod)
        obj['name'] = drow['name']
        if drow['stat'] and (drow['stat'] & 2) == 2:
            obj['is_delete'] = "<span class='bferr'> УВОЛЕН </span>"
        #	obj['n_pst'], 'n_post', 'n_catg',
        obj['smena'] = drow['smena']
        obj['snils'] = drow['snils']
        obj['sn_pst'] = drow['sname']
        obj['psname'] = drow['psname']
        obj['cname'] = drow['cname']
        obj['mdate'] = drow['mdate']
        obj['cod'] = drow['cod']
    else:
        obj['UPDATE'] = """<input type='button' class='butt' value='Сохранить' onclick="set_shadow('%s&FORM=save&pcod=%s');">  """ % (
            request.get('shstat'), pcod)
        obj['name'] = "<input type='text' name='name' value='%s' size=22 />" % sval(
            drow, 'name')
        obj['cod'] = "<input type='text' name='cod' value='%s' size=3 />" % cod  #sval(dtkt, 'cod')
        obj['snils'] = "<input type='text' name='snils' value='%s' size=12 />" % sval(
            drow, 'snils')
        obj['sn_pst'] = T.sselect(dboo, dictin['sel_subst'],
                                  sval(drow, 'n_pst'))
    #	obj['sname'] = "<input type='text' name='sname' value='%s' size=3 />" % sval(drow, 'sname')

    obj['pre'] = str(drow)

    #	print obj
    print "~wdg_bc|"
    parse_forms(opts, obj, "pers_form.html")
Beispiel #2
0
def open_uform(SS, request):
    print "pen_uform", request
    print "~wdg_bc|"
    opts = {}
    obj = {}
    obj['title'] = "Пользователь"
    dt = dict_tables.get('tbl_user')
    query = dt['query']
    query += " WHERE u.disp = %s" % request['pkey']
    drow = dboo.get_dict(query)
    print query
    print drow
    for k in drow.keys():
        obj[k] = drow[k]
    parse_forms(opts, obj, "user_form.html")
Beispiel #3
0
def list_users(SS, request):
    """ Список пользователей СМП	"""
    global US_ROW, onchange
    print "list_users", SS, request
    print "~mybody|"
    print """<div id="list_user" style="width: 100%; position: absolute; background-color: #fff; padding: 2px; min-height: 20%; max-height: 90%; overflow: auto;">"""
    opts = {}
    obj = {}
    sutype = request.get('sel_usrtype')
    dictin['sel_usrtype']['on'] = onchange
    obj['sel_usrtype'] = T.sselect(dboo, dictin['sel_usrtype'], sutype)
    ssubst = request.get('sel_subst')
    dictin['sel_subst']['on'] = onchange
    obj['sel_subst'] = T.sselect(dboo, dictin['sel_subst'], ssubst)
    parse_forms(opts, obj, 'find_users.html')

    wheres = []
    if ssubst: wheres.append("subst = %s" % ssubst)
    if sutype: wheres.append("type = %s" % sutype)

    out_table_as_list('tbl_user', where=wheres, order="pname")
    print "</div>	<!-- list_user	-->"
    print """~eval| $('#tbl_user tr.line').hover (function () { $('#tbl_user tr').removeClass('mark'); $(this).addClass('mark'); $('#shadow').text('')});"""
Beispiel #4
0
def brgs_list(SS, request):
    """ Формировать список бригад	"""
    US_ROW = SS.objpkl.get('us_row')
    print "brgs_list", US_ROW, request
    print "~mybody|"
    opts = {}
    obj = {}
    ssubst = sbwfind = sstatb = ssmen = None
    for k in request.keys():
        if k == 'sel_smen': ssmen = request.get('sel_smen')
        if k == 'sel_subst': ssubst = request.get('sel_subst')
        if k == 'sel_statb': sstatb = request.get('sel_statb')
        if k == 'sel_bwfind': sbwfind = request.get('sel_bwfind')

    sfrom = 'bnaryd'
    if sbwfind in ['2', '3']:
        obj['online'] = False
        sfrom = 'brignrd'
        if sbwfind == '3': ssmen = str(T.next_smena(dboo))
        elif not ssmen: ssmen = str(T.curr_smena(dboo))
        #	if sbwfind == '3':
        #		ssmen = str(T.next_smena (dboo))
        #	else:	ssmen = str(T.curr_smena (dboo))
    else:
        obj['online'] = True

    armid = US_ROW['armid'].strip()
    if armid == 'DISP_PS':
        obj['DISP_PS'] = True
        ssubst = str(US_ROW.get('subst'))
        obj['subst'] = T.svals(dboo, dictin['sel_subst'], ssubst)
    else:
        obj['sel_subst'] = T.sselect(dboo, dictin['sel_subst'], ssubst)
    obj['sel_smen'] = T.sel_smen(
        dboo,
        son="onchange=\"$('#wdg_bc').html(''); set_shadow('BRG_WOKE');\"",
        cs=ssmen)
    obj['sel_statb'] = T.sselect(dboo, dictin['sel_statb'], sstatb)
    obj['sel_bwfind'] = T.sselect(dboo, dictin['sel_bwfind'], sbwfind)

    parse_forms(opts, obj, 'find_brigs.html')

    lwheres = []
    if sfrom == 'brignrd':
        if ssmen: lwheres.append('smena = %s' % ssmen)
    elif sstatb: lwheres.append('stat = %s' % sstatb)

    if ssubst: lwheres.append('n_pst = %s' % ssubst)
    if not lwheres: lwheres.append('br_id > 0')
    swhere = " AND ".join(lwheres)
    #	print	"SELECT * FROM %s WHERE %s ORDER BY number" % (sfrom, swhere)
    sorder = "ORDER BY number, smena"
    res = dboo.get_table(sfrom, "%s %s" % (swhere, sorder))
    if not res:
        if not dboo.last_error:
            print "<span class='bfinf'> &nbsp; Нет данных! &nbsp; </span><br>"
        print "brgs_list get_table:", sfrom, swhere, sorder
        return
    d = res[0]
    cignore = colsIgnore[sfrom]

    print """<div id="list_brigs" style="border: thin solid #668; width: 100%; position: absolute; background-color: #fff; padding: 2px; min-height: 20%; max-height: 90%; overflow: auto;">"""
    print "<table id='tbl_brigs' width=100%><tr>"
    print "<th>Бригада</th>"
    for k in d:
        if k in cignore:
            continue  #['br_id', 'number', 'profile', 'sector', 'doc_post', 'flag', 'pgr', 'st_begin', 'st_end']:		continue
        print "<th>", cname_brig.get(k), "</th>"
    print "</tr>"
    for r in res[1]:
        sonclick = """ onclick="set_shadow('brg_form&br_id=' +'%s' +'&bfrom=' +'%s');" """ % (
            r[d.index('br_id')], sfrom)
        bstat = r[d.index('stat')]
        if not bstat: bclass = "%s" % 'bferr'
        elif bstat in [5, 6, 7]: bclass = "%s" % 'bfinf'
        elif bstat == 10: bclass = "%s" % 'bferr'
        elif bstat in [1, 2, 3, 4]: bclass = "%s" % 'bfligt'
        else: bclass = "%s" % 'bfblue'
        #	print "<tr class='line %s' id='brid%3d' %s><td>%s%s%s</td>" % (bclass, r[d.index('br_id')], sonclick, img_brig, r[d.index('number')], r[d.index('profile')])
        print "<tr class='line %s' id='brid%3d' %s><td>%s</td>" % (
            bclass, r[d.index('br_id')], sonclick,
            slab_brig(r[d.index('number')], r[d.index('profile')],
                      r[d.index('stat')]))
        for k in d:
            if k in cignore:
                continue  #['br_id', 'number', 'profile', 'sector', 'doc_post', 'flag', 'pgr', 'st_begin', 'st_end', 'sanitr']:	continue
            if not r[d.index(k)]:
                print "<td> </td>"
            elif k == 'stat':
                print "<td> %s </td>" % T.svals(dboo, dictin['statb'],
                                                r[d.index(k)])
            elif k == 'auto':
                print "<td> %s%s </td>" % (
                    img_auto, T.svals(dboo, dictin[k], r[d.index(k)]))
    #			print "<td> %s </td>" % T.svals (dboo, dictin[k], r[d.index(k)])
            elif k in [
                    'tm_beg', 'tm_end', 'stm_beg', 'stm_end', 'st_begin',
                    'st_end'
            ]:
                print "<td> %s </td>" % sdtime(r[d.index(k)],
                                               "%H:%M")  # %d.%m.%Y")
            elif k == 'scall':
                print "<td> %s%s </td>" % (img_call, str(r[d.index(k)]))
            elif k == 'tm_work':
                h = int(r[d.index(k)] / 3600)
                print "<td> %02d.%02d </td>" % (h, (r[d.index(k)] - h * 3600) /
                                                60)
            elif k in ['doctor', 'feldsh']:  #, 'sanitr']:
                print "<td> %s </td>" % T.svals(dboo, dictin['doctor'],
                                                r[d.index(k)])
            elif k == 'driver':
                print "<td> %s </td>" % T.svals(dboo, dictin['driver'],
                                                r[d.index(k)])
            elif k == 'street':
                if r[d.index('house')]:
                    print "<td> %s д.%s </td>" % (r[d.index('street')],
                                                  r[d.index('house')])
                else:
                    print "<td> %s  </td>" % r[d.index('street')]
            else:
                print "<td> %s </td>" % str(r[d.index(k)])
        print "</tr>"
    '''
	print "<pre>"
	print "</pre>"
	'''
    print "</table>	<!-- tbl_brigs	-->"
    print "</div>	<!-- list_brigs	-->"

    print """~eval| $('#tbl_brigs tr.line').hover (function () { $('#tbl_brigs tr').removeClass('mark'); $(this).addClass('mark'); $('#shadow').text('')});"""
Beispiel #5
0
def brg_form(SS, request):
    """ Показать карточку Бригады / Дежурный наряд 	"""
    #	print request
    US_ROW = SS.objpkl.get('us_row')
    tname = request.get('bfrom')
    if not tname:
        print "<span class='bferr'>", request, "</span>"
        return

    obj = {}
    is_edit = False
    dbrg = dboo.get_dict("SELECT * FROM %s WHERE br_id = %s" %
                         (tname, request.get('br_id')))
    if request.get('exec') == 'SAVE':
        obj['SAVE'] = brg_save(SS, dbrg, request)
        dbrg = dboo.get_dict("SELECT * FROM %s WHERE br_id = %s" %
                             (tname, request.get('br_id')))
        request['exec'] = "EDIT"

    subst = dbrg.get('n_pst')
    #	if subst == 12:	subst = 2
    armid = US_ROW['armid'].strip()
    if armid in ['DISP_PS', 'DISP_NP', 'ZAV_PS']:
        obj['IS_UPDATE'] = True
        print request.get('exec')
        if request.get('exec') == 'EDIT':
            is_edit = True
            obj['UPDATE'] = """<input class='butt' type='button' value='Сохранить' onclick="set_shadow('brg_form&exec=SAVE&br_id=' +'%s' +'&bfrom=' +'%s');" />""" % (
                dbrg['br_id'], tname)
        else:
            obj['UPDATE'] = """<input class='butt' type='button' value='Изменить' onclick="set_shadow('brg_form&exec=EDIT&br_id=' +'%s' +'&bfrom=' +'%s');" />""" % (
                dbrg['br_id'], tname)
    else:
        obj['IS_UPDATE'] = False
    if tname == 'bnaryd':
        obj['IN_WORK'] = True
    else:
        obj['IN_WORK'] = False
    obj['img'] = "%s %s%s" % (img_brig, dbrg.get('number'),
                              dbrg.get('profile'))
    obj['bnum'] = "%s%s" % (dbrg.get('number'), dbrg.get('profile'))
    obj['smena'] = dbrg.get('smena')
    #	obj['number'] = dbrg.get('number')
    obj['title'] = T.svals(dboo, dictin['sel_bwfind'],
                           request.get('sel_bwfind'))
    obj['n_pst'] = T.svals(dboo, dictin['sel_subst'], subst)
    bstat = dbrg.get('stat')
    if is_edit and (not bstat or bstat in [1, 2]):
        dictin['sel_statb']['sname'] = 'stat'
        dictin['sel_statb']['where'] = "cod < 3"
        dictin['sel_statb']['on'] = ''
        obj['stat'] = T.sselect(dboo, dictin['sel_statb'], bstat)
    else:
        obj['stat'] = T.svals(dboo, dictin['sel_statb'], bstat)
    if obj['IN_WORK']:
        tm_work = dbrg.get('tm_work')
        obj['br_ref'] = "<span class='cbutt'> на линии: %s </span>" % T.ref2brg(
            dboo, dbrg.get('br_id'), 7)  #cstt)
        if tm_work:
            obj['tm_work'] = "%02d.%02d" % (int(
                tm_work / 3600), (tm_work - int(tm_work / 3600) * 3600) / 60)
        obj['ncall'] = dbrg.get('ncall')
        obj['scall'] = dbrg.get('scall')
        if is_edit:
            obj['tm_beg'] = inputText('tm_beg',
                                      sdtime(dbrg.get('tm_beg'), "%H:%M"),
                                      'size=5')
            obj['tm_end'] = inputText('tm_end',
                                      sdtime(dbrg.get('tm_end'), "%H:%M"),
                                      'size=5')
        else:
            obj['tm_beg'] = sdtime(dbrg.get('tm_beg'), "%H:%M")
            obj['tm_end'] = sdtime(dbrg.get('tm_end'), "%H:%M")
        obj['stm_beg'] = sdtime(dbrg.get('stm_beg'), "%H:%M")
        obj['stm_end'] = sdtime(dbrg.get('stm_end'), "%H:%M")
    else:
        if is_edit:
            obj['t_begin'] = inputText(
                't_begin', dbrg.get('t_begin'),
                'size=5')  # sdtime(dbrg.get('t_begin'), "%H:%M"), 'size=5')
            obj['t_end'] = inputText(
                't_end', dbrg.get('t_end'),
                'size=5')  # sdtime(dbrg.get('t_end'), "%H:%M"), 'size=5')
        else:
            obj['t_begin'] = dbrg.get('t_begin')
            obj['t_end'] = dbrg.get('t_end')
    if dbrg.get('street'):
        if dbrg.get('house'):
            obj['addres'] = "%s </b> дом <b> %s" % (dbrg['street'],
                                                    dbrg['house'])
        else:
            obj['addres'] = "%s" % dbrg['street']
    '''
	doctor =	{'sname': 'sel_doctor', 'tab': 'vperson_sp', 'key': 'cod', 'val': 'name, post_name', 'rvals': ['name', 'post_name'], 'knull': '', 'order': 'name', 'where': 'n_pst = %s AND n_catg IN (1,2)' % (subst) }
	feldsh =	{'sname': 'sel_feldsh', 'tab': 'vperson_sp', 'key': 'cod', 'val': 'name', 'rvals': ['cod', 'name'], 'knull': '', 'order': 'name', 'where': 'n_pst = %s AND n_catg IN (2,3)' % (subst) }
	sanitr =	{'sname': 'sel_sanitr', 'tab': 'vperson_sp', 'key': 'cod', 'val': 'name', 'rvals': ['cod', 'name'], 'knull': '', 'order': 'name', 'where': 'n_pst = %s AND n_catg IN (2,3, 4)' % (subst) }
	driver =	{'sname': 'sel_driver', 'tab': 'vperson_sp', 'key': 'cod', 'val': 'name', 'rvals': ['cod', 'name'], 'knull': '', 'order': 'name', 'where': 'n_pst = %s AND n_catg = 8' % (subst) }
	'''
    if is_edit:  #if not obj['IS_UPDATE']:
        pinwork = pers_in_work(dboo, dbrg)
        dictin['doctor']['where'] = 'n_pst = %s AND n_catg IN (1,2) %s' % (
            subst, pinwork)
        #	dictin['doctor']['where'] = 'n_pst = %s AND stat = 3 AND n_catg IN (1,2) %s' % (subst, pinwork)
        obj['doctor'] = T.sselect(dboo, dictin['doctor'], dbrg.get('doctor'))
        dictin['doctor']['where'] = 'n_pst = %s AND n_catg IN (2,3) %s' % (
            subst, pinwork)
        dictin['doctor']['sname'] = 'feldsh'
        obj['feldsh'] = T.sselect(dboo, dictin['doctor'], dbrg.get('feldsh'))
        dictin['doctor']['where'] = 'n_pst = %s AND n_catg IN (2,3,4) %s' % (
            subst, pinwork)
        dictin['doctor']['sname'] = 'sanitr'
        obj['sanitr'] = T.sselect(dboo, dictin['doctor'], dbrg.get('sanitr'))
        dictin['driver']['where'] = 'n_pst = %s AND n_catg = 8 %s' % (
            subst, pers_in_work(dboo, dbrg, 'driver'))
        obj['driver'] = T.sselect(dboo, dictin['driver'], dbrg.get('driver'))
        #	print dictin['doctor']['where']
        dictin['auto']['where'] = 'n_pst = %s AND stat = 2' % subst
        obj['auto'] = T.sselect(dboo, dictin['auto'], dbrg.get('auto'))
    else:
        if dbrg.get('doctor'):
            obj['doctor'] = T.svals(dboo, dictin['doctor'], dbrg.get('doctor'))
        if dbrg.get('feldsh'):
            obj['feldsh'] = T.svals(dboo, dictin['doctor'], dbrg.get('feldsh'))
        if dbrg.get('sanitr'):
            obj['sanitr'] = T.svals(dboo, dictin['doctor'], dbrg.get('sanitr'))
        if dbrg.get('driver'):
            obj['driver'] = T.svals(dboo, dictin['driver'], dbrg.get('driver'))
        if dbrg.get('auto'):
            obj['auto'] = "%s%s" % (
                img_auto, T.svals(dboo, dictin['auto'], dbrg.get('auto')))

    print "~wdg_bc|"
    #	print	"<div id='brg_form' type='hidden' style='top: 160px; left: 500px; width: 600px; min-height: 400px; border: thin solid #668; background-color: #efe; position: absolute; z-index: 1112'>"
    parse_forms({}, obj, 'cbrg_form.html')
    '''
Beispiel #6
0
def brg_activ(SS, request):
    print 'request', request
    US_ROW = SS.objpkl.get('us_row')

    dbrg = dboo.get_dict("SELECT * FROM bnaryd WHERE br_id = %s" %
                         (request.get('br_id')))
    br_id = dbrg.get('br_id')
    obj = {'title': "Бригада на линии"}
    obj['img'] = "%s %s%s" % (img_brig, dbrg.get('number'),
                              dbrg.get('profile'))
    if dbrg.get('doctor'):
        obj['doctor'] = T.svals(dboo, dictin['doctor'], dbrg.get('doctor'))
    if dbrg.get('auto'):
        obj['auto'] = T.svals(dboo, dictin['auto'], dbrg.get('auto'))
        obj['driver'] = T.svals(dboo, dictin['driver'], dbrg.get('driver'))
    tm_work = dbrg.get('tm_work')
    if tm_work:
        obj['tm_work'] = "%02d.%02d" % (int(
            tm_work / 3600), (tm_work - int(tm_work / 3600) * 3600) / 60)
    obj['smena'] = dbrg.get('smena')
    obj['ncall'] = dbrg.get('ncall')
    obj['subst'] = T.svals(dboo, dictin['sel_subst'], dbrg.get('n_pst'))
    obj['bstat'] = T.svals(dboo, dictin['sel_statb'], dbrg.get('stat'))
    obj['tm_beg'] = sdtime(dbrg.get('tm_beg'), "%H:%M")
    obj['tm_end'] = sdtime(dbrg.get('tm_end'), "%H:%M")
    obj['stm_beg'] = sdtime(dbrg.get('stm_beg'), "%H:%M")
    obj['stm_end'] = sdtime(dbrg.get('stm_end'), "%H:%M")
    if dbrg.get('street'):
        if dbrg.get('house'):
            obj['addres'] = "%s </b> дом <b> %s" % (dbrg['street'],
                                                    dbrg['house'])
        else:
            obj['addres'] = "%s" % dbrg['street']
    cols = [
        'number', 'profile', 'street', 'house', 'korp', 'reasn', 't_get',
        't_send', 't_arrl', 't_done', 't_close', 'cnum_total', 'id_ims'
    ]
    #	scalls = dboo.get_rows (
    query = "SELECT %s FROM calls WHERE br_ref = %s AND t_send > %s -1800 ORDER BY t_send DESC" % (
        ','.join(cols), br_id, dbrg.get('tm_beg'))
    #	obj['query'] = query
    rows = dboo.get_rows(query)
    c_activ = []
    c_arch = []
    if rows:
        d = dboo.desc
        for r in rows:
            cstt = clc_cstatus(r, d)
            cclass, cimg = cdef2cstt(cstt)
            cnum_total = r[d.index('cnum_total')]
            soncall = """onclick="open_call(%s);" """ % cnum_total
            saddr = "%s" % r[d.index('street')]
            if r[d.index('korp')]: saddr += " к.%s" % r[d.index('korp')]
            if r[d.index('house')]: saddr += " д.%s" % r[d.index('house')]
            #	sreasn = "<span class='line %s'> %s %s <b>%s </b> </span>" % (cclass, cimg, r[d.index('number')], r[d.index('reasn')])
            sreasn = "<span class='line %s'> %s %s </span>" % (
                cclass, cimg, r[d.index('number')])
            stimes = []
            for k in ['t_get', 't_send', 't_arrl', 't_done', 't_close']:
                if r[d.index(k)]:
                    stimes.append('<td >%s</td>' %
                                  sdtime(r[d.index(k)], "%H:%M"))
                else:
                    stimes.append('<td >--:--</td>')
            sss = """<tr class='line' %s><td width=100px> %s </td><td ><b> %s </b></td> %s <td> %s </td>""" % (
                soncall,
                sreasn,
                r[d.index('reasn')],  # sdtime(r[d.index('t_get')], "%H:%M"),
                "".join(stimes),
                saddr)
            if dbrg.get('scall') == r[d.index('number')]:
                obj['scall'] = "<span class='line %s' %s> %s %s <b>%s </b> </span>" % (
                    cclass, soncall, cimg, r[d.index('number')],
                    r[d.index('reasn')])
                c_activ.append(sss)
            elif not r[d.index('t_done')]:
                c_activ.append(sss + "</tr>")
            else:
                c_arch.append(sss + "<td>%s</td></tr>" %
                              slab_omc(r[d.index('id_ims')]))
    if c_activ: obj['c_activ'] = "\n".join(c_activ)
    if c_arch: obj['c_arch'] = "\n".join(c_arch)

    print "~wdg_bc|"
    parse_forms({}, obj, 'brg_activ.html')

    print """~eval| $('#tbrg_4exec tr.line').hover (function () { $('#tbrg_4exec tr').removeClass('mark'); $('#tbrg_arch tr').removeClass('mark'); $(this).addClass('mark'); $('#shadow').text('')});"""
    print """~eval| $('#tbrg_arch tr.line').hover (function () { $('#tbrg_arch tr').removeClass('mark'); $('#tbrg_4exec tr').removeClass('mark'); $(this).addClass('mark'); $('#shadow').text('')});"""
Beispiel #7
0
def out_form(SS, request):
    cnum_ttl = 127627
    query = "SELECT * FROM calls WHERE cnum_total = %s" % cnum_ttl

    dcall = dboo.get_dict(query)
    opts = {}
    obj = {}
    US_ROW = SS.objpkl.get('us_row')
    cbrig = [0, 0, 0, 0, 0]
    obj['user'] = "******" % (US_ROW['cod'], US_ROW['fio'])
    obj['subst'] = "%s %s" % (
        dcall['subst'],
        dboo.get_dict("SELECT name FROM sp_station WHERE cod = %s" %
                      dcall['subst'])['name'])
    obj['brigs'] = "%s %s" % (dcall['nbrg'], dcall['pbrg']
                              )  #	nbrg	pbrg	nsbrg	br_ref
    obj['number'] = str(dcall['number'])
    obj['date'] = sdater(dcall['t_get'])
    #	obj['date'] = sdtime(dcall['t_get'], "%d %B %Y")

    if dcall['doctor']:
        obj['doctor'] = T.svals(
            dboo, {
                'sname': 'doctor',
                'tab': 'vperson_sp',
                'key': 'cod',
                'val': 'name, post_name',
                'rvals': ['cod', 'name', 'post_name']
            }, dcall['doctor'])
        ddoc = dboo.get_dict(
            "SELECT cod, name, post_name, n_catg FROM vperson_sp WHERE cod = %s"
            % dcall['doctor'])
        #		obj['doctor'] = "%s %s %s" % (ddoc['cod'], ddoc['name'], ddoc['post_name'])
        if ddoc['n_catg'] > 0: cbrig[(ddoc['n_catg'] - 1)] += 1
    if dcall['br_ref']:
        dbrg = dboo.get_dict("SELECT * FROM bnaryd WHERE br_id = %s" %
                             dcall['br_ref'])
        if dbrg['feldsh']:
            obj['feldsh'] = T.svals(
                dboo, {
                    'tab': 'vperson_sp',
                    'key': 'cod',
                    'val': 'name, post_name',
                    'rvals': ['name', 'post_name']
                }, dbrg['feldsh'])
            cbrig[1] += 1
        if dbrg['sanitr']:
            obj['sanitr'] = T.svals(
                dboo, {
                    'tab': 'vperson_sp',
                    'key': 'cod',
                    'val': 'name, post_name',
                    'rvals': ['name']
                }, dbrg['sanitr'])
            cbrig[2] += 1
        if dbrg['driver']:
            obj['driver'] = T.svals(
                dboo, {
                    'tab': 'vperson_sp',
                    'key': 'cod',
                    'val': 'name, post_name',
                    'rvals': ['name']
                }, dbrg['driver'])
            cbrig[3] += 1
        else:
            obj['driver'] = '_' * 20
        obj['auto'] = T.svals(
            dboo, {
                'tab': 'automobile',
                'key': 'id_auto',
                'val': 'id_auto, reg_num',
                'rvals': ['reg_num']
            }, dbrg['auto'])
    obj['cbrig'] = str(cbrig)

    obj['t_get'] = sdtime(dcall['t_get'])
    obj['t_send'] = sdtime(dcall['t_send'])
    obj['t_arrl'] = sdtime(dcall['t_arrl'])
    obj['t_done'] = sdtime(dcall['t_done'])
    obj['tm_trans'] = sdtime(dcall['tm_trans'])
    obj['tm_hosp'] = sdtime(dcall['tm_hosp'])
    obj['tm_ps'] = sdtime(dcall['tm_ps'])
    #	obj['t_get'] = sdtime(dcall['t_get'])

    obj['saddres'] = saddres(dcall['street'], dcall['house'])
    #	korp', 'flat', 'pdzd', 'etj', 'pcod', 'phone', 'name', 'name2', 'kto', 'age', 'sex'
    for k in ['korp', 'flat', 'pdzd', 'etj', 'pcod', 'age', 'sex']:
        if dcall[k]: obj[k] = "<b>%s</b>" % dcall[k]
        else: obj[k] = "_" * 3
    for k in ['phone', 'name', 'name2']:
        if dcall[k]: obj[k] = "<b>%s</b>" % dcall[k]
        else: obj[k] = "_" * 23
    obj['kto'] = T.svals(dboo, {
        'tab': "who_call",
        'key': 'cod',
        'rvals': ['name']
    }, dcall['kto'])
    if dcall['t_done'] > 0:
        obj['dtime'] = "%d мин" % ((dcall['t_done'] - dcall['t_get']) // 60)

    obj['g_disp'] = "%s %s" % (
        dcall['g_disp'],
        dboo.get_dict("SELECT name FROM person_sp WHERE cod = %s" %
                      dcall['g_disp'])['name'])
    #	obj['s_disp'] = "%s %s" % (dcall['s_disp'], dboo.get_dict("SELECT name FROM person_sp WHERE cod = %s" % dcall['s_disp'])['name'])
    #	print obj;	return

    obj['j_registr'] = T.scheckboxes(dboo, {
        'tab': 'j_registr',
        'key': 'cod',
        'val': 'name',
    })
    obj['j_social'] = T.scheckboxes(dboo, {
        'tab': 'j_social',
        'key': 'cod',
        'val': 'name',
    })
    obj['j_reason'] = T.scheckboxes(dboo, {
        'tab': 'j_reason',
        'key': 'cod',
        'val': 'name',
    })

    obj['j_cause'] = T.scheckboxes(dboo, {
        'tab': 'j_cause',
        'key': 'cod',
        'val': 'name',
    })
    obj['j_obj_general'] = T.scheckboxes(dboo, {
        'tab': 'j_obj_general',
        'key': 'cod',
        'val': 'name',
    })
    obj['j_obj_behav'] = T.scheckboxes(dboo, {
        'tab': 'j_obj_behav',
        'key': 'cod',
        'val': 'name',
    })
    obj['j_obj_cons'] = T.scheckboxes(dboo, {
        'tab': 'j_obj_cons',
        'key': 'cod',
        'val': 'name',
    })
    obj['j_obj_pupils'] = T.scheckboxes(dboo, {
        'tab': 'j_obj_pupils',
        'key': 'cod',
        'val': 'name',
    })
    obj['j_obj_integ'] = T.scheckboxes(dboo, {
        'tab': 'j_obj_integ',
        'key': 'cod',
        'val': 'name',
    })
    obj['j_obj_breath'] = T.scheckboxes(dboo, {
        'tab': 'j_obj_breath',
        'key': 'cod',
        'val': 'name',
    })
    obj['j_obj_rattles'] = T.scheckboxes(dboo, {
        'tab': 'j_obj_rattles',
        'key': 'cod',
        'val': 'name',
    })
    obj['j_obj_wind'] = T.scheckboxes(dboo, {
        'tab': 'j_obj_wind',
        'key': 'cod',
        'val': 'name',
    })
    obj['j_obj_tones'] = T.scheckboxes(dboo, {
        'tab': 'j_obj_tones',
        'key': 'cod',
        'val': 'name',
    })
    obj['j_obj_noise'] = T.scheckboxes(dboo, {
        'tab': 'j_obj_noise',
        'key': 'cod',
        'val': 'name',
    })
    obj['j_obj_pulse'] = T.scheckboxes(dboo, {
        'tab': 'j_obj_pulse',
        'key': 'cod',
        'val': 'name',
    })
    obj['j_obj_lang'] = T.scheckboxes(dboo, {
        'tab': 'j_obj_lang',
        'key': 'cod',
        'val': 'name',
    })
    obj['j_obj_stom'] = T.scheckboxes(dboo, {
        'tab': 'j_obj_stom',
        'key': 'cod',
        'val': 'name',
    })
    print obj['j_registr']

    print """~mybody|<div id="list_calls" style="border: thin solid #668; width: 100%; position: absolute; background-color: #fff; padding: 2px; height: 100%">"""
    print "<div type='hidden' style='top: 40px; left: 180px; width: 900px; border: thin solid #668; background-color: #ffe; position: absolute; z-index: 1112' >"
    #	print	"out_form", obj.keys()
    parse_forms(opts, obj, 'f110u.html')
    print "</div>"
    print "</div>"
Beispiel #8
0
def list_persons(SS, request):
    """ Показать список Сотрудник СМП	"""
    global US_ROW, onchange
    print "~mybody|"
    #	US_ROW = SS.objpkl.get('us_row')
    #	print	"nsi_tools.main", US_ROW['armid'], request
    opts = {}
    obj = {}
    '''
	spost = request.get('sel_post')
	obj['sel_post'] = T.sselect (dboo, dictin['sel_post'], spost)
	ssmen = request.get('sel_smen')
	obj['sel_smen'] = T.sel_smen (dboo, son = "onchange=\"$('#wdg_bc').html(''); set_shadow('PERSONS');\"", cs = ssmen, fs = True)
	'''
    ssubst = request.get('sel_subst')
    dictin['sel_subst']['on'] = onchange
    obj['sel_subst'] = T.sselect(dboo, dictin['sel_subst'], ssubst)
    scatgr = request.get('sel_category')
    dictin['sel_category']['on'] = onchange
    obj['sel_category'] = T.sselect(dboo, dictin['sel_category'], scatgr)
    sstat = request.get('sel_stat')
    dictin['sel_stat']['on'] = onchange
    obj['sel_stat'] = T.sselect(dboo, dictin['sel_stat'], sstat)

    parse_forms(opts, obj, 'find_persons.html')
    query = """ SELECT p.*, s.name AS sname, ps.name AS psname, c.name AS cname, t.name AS tname FROM person_sp p
		JOIN sp_station s ON n_pst = s.cod
		JOIN sp_post ps ON n_post = ps.cod
		JOIN sp_category c ON n_catg = c.cod
		JOIN person_stat t ON (stat & 253) = t.cod
		"""
    wheres = []
    if not sstat: wheres.append("stat & 3 = 1")
    else: wheres.append("stat & %s = %s" % (sstat, sstat))
    if ssubst: wheres.append("n_pst = %s" % ssubst)
    if scatgr: wheres.append("n_catg = %s" % scatgr)
    if wheres: query += "WHERE %s" % " AND ".join(wheres)
    rows = dboo.get_rows(query)
    if not rows:
        if not dboo.last_error:
            print "<span class='bfinf'> &nbsp; Нет данных! &nbsp; </span><br>"
        else:
            print "<span class='bferr'> &nbsp;", dboo.last_error, "&nbsp; </span><br>"
        return
    print """<div id="list_person" style="width: 100%; position: absolute; background-color: #fff; padding: 2px; min-height: 20%; max-height: 90%; overflow: auto;">"""
    print "<table id='tbl_person' width=100%><tr>"
    d = dboo.desc
    #	['cod', 'name', 'n_pst', 'n_post', 'n_catg', 'smena', 'stat', 'mdate', 'snils', 'sname', 'psname', 'cname', 'tname']
    #	print d
    cnames = ['cod', 'name', 'psname', 'snils', 'sname', 'cname', 'tname']
    for k in cnames:
        print "<th>%s</th>" % k
    for r in rows:
        sonclick = """ onclick="set_shadow('PERSONS&FORM=view&pcod=' +'%s' +'&pfrom=' +'%s');" """ % (
            r[d.index('cod')], 'person_sp')
        bclass = "%s" % 'bfligt'
        print "<tr class='line %s' id='pcod%3d' %s>" % (
            bclass, r[d.index('cod')], sonclick)
        for k in cnames:
            if r[d.index(k)]:
                print "<td>%s</td>" % r[d.index(k)],
            else:
                print "<td> &nbsp; </td>"
        print "</tr>"
    print "</table>	<!-- tbl_person		-->"
    print "</div>	<!-- list_person	-->"
    print """~eval| $('#tbl_person tr.line').hover (function () { $('#tbl_person tr').removeClass('mark'); $(this).addClass('mark'); $('#shadow').text('')});"""