Last Fixes

This commit is contained in:
2016-10-20 11:15:10 +02:00
parent 2148449c4d
commit fb65726286
4 changed files with 101 additions and 20 deletions

64
DB.py
View File

@@ -439,6 +439,70 @@ class DB:
raise Warning
def addnacharbeit (self, data):
"""
Add Processdata 09
and update BDE data
"""
#self.updatebde (data['dmc'], 'nacharbeit', data['bauteilstatus'])
#self.updatebde (data['dmc'], 'endts', data['endts'])
#if data['bauteilstatus'] == 'n.i.O.':
l = self.getbde (data['dmc'])[0]
#dmc, startts, endts, ladungstraeger, seriennr, variante, pruefzelle1, putzzelle, chiron, blindniet, bajonettclip, cclip, masseblech, pruefzelle2, nacharbeit, csv
_states = {'pruefzelle1' : l[6],
'putzzelle' : l[7],
'chiron' : l[8],
'blindniet': l[9],
'bajonettclip': l[10],
'cclip': l[11],
'masseblech' : l[12]
}
#'Bajonettclip'
if _states ['bajonettclip'] == 'n.Durchlaufen':
self.log (5, 'PD09 Bajonett %s nDurchlaufen do nothing' % ['dmc'])
else:
io = 1
for i in range (1, 5):
if data['bajostatus%02d' % i] == 'i.O. NA':
self.log (5, 'PD09 bajonett%02d reworked updating part data' % (i))
self.updateinformation (data['dmc'], 'bajonettclip', 'bajostatus%02d' % i, data['bajostatus%02d' % i])
elif data['bajostatus%02d' % i] == 'n.i.O.':
self.log (5, 'PD09 bajonett%02d still n.i.O ' % (i))
io = 0
if io:
self.updatebde (data['dmc'], 'bajonettclip', 'i.O. NA')
#'CClip'
if _states ['cclip'] == 'n.Durchlaufen':
self.log (5, 'PD09 CClip %s nDurchlaufen do nothing' % ['dmc'])
else:
io = 1
for i in range (1, 5):
if data['clipstatus%02d' % i] == 'i.O. NA':
self.log (5, 'PD09 CClip%02d reworked updating part data' % (i))
self.updateinformation (data['dmc'], 'cclip', 'clipstatus%02d' % i, data['clipstatus%02d' % i])
elif data['clipstatus%02d' % i] == 'n.i.O.':
self.log (5, 'PD09 clipstatus%02d still n.i.O ' % (i))
io = 0
if io:
self.updatebde (data['dmc'], 'cclip', 'i.O. NA')
nav = NAV (path = "/srv/navision/", db = self)
nav.createcsv (data['dmc'])
try:
shutil.move ("/srv/navision/%s.csv" % data['dmc'], "/srv/navision/share")
except:
self.errlog ("/srv/navision/share/%s.csv already esist" % data['dmc'])
os.rename ("/srv/navision/%s.csv" % data['dmc'], "/srv/navision/share%s.csv" % data['dmc'])
self.updatebde (data['dmc'], 'csv', 'erzeugt')
def addpruefzelle2 (self, data):
"""
Add Processdata 10 - pruefzelle 2

38
bde.py
View File

@@ -168,11 +168,11 @@ class BDEServer ():
if ret_val.has_key('nr'):
count = ret_val['nr']
self.message (2,' DT_handler : Tel. Counter old %d new %d' % (count_old, count))
if (count == count_old) and (count > 0):
if (count == count_old) and (count > 0) and self.connections[_channel][(client_id)][3] != 'PD09':
self.errlog (' DT_handler : FixMe repeated Tel %d' % (count))
_quit = 0
elif (count == 0) or (count == (count_old % 32767) + 1) or (count == -1):
elif (count == 0) or (count == (count_old % 32767) + 1) or (count == -1) or self.connections[_channel][(client_id)][3] == 'PD09' :
#Other Telegram received
self.log (3, "DT_handler : Tel Counter valid %d" % (count))
_quit = ret_val['check']
@@ -203,6 +203,9 @@ class BDEServer ():
elif teltype == 'PD08':
self.message (3, ' DT_handler : Store Data from PD08 Masseblech for %s' % ret_val['dmc'])
DB_con.addmasseblech (ret_val)
elif teltype == 'PD09':
self.message (3, ' DT_handler : Store Data from PD09 Nacharbeit for %s' % ret_val['dmc'])
DB_con.addnacharbeit (ret_val)
elif teltype == 'DM09':
self.message (3, ' DT_handler : Requested Data from PD09 Nacharbeit for %s' % ret_val['dmc'])
elif teltype == 'PD10':
@@ -248,12 +251,12 @@ class BDEServer ():
DB_con = self.connections['DB']
self. message (3, " generatepd : generate PD Telegram for %s on channel %s, dmc %s" % (msgtype, channel, dmc))
_data = chr ((count >> 8) & 0xFF) + chr (count & 0xFF)
_data = bytes ([((count >> 8) & 0xFF)]) + bytes ([(count & 0xFF)])
#Fillword
_data = bytes ([1]) + bytes ([1]) + bytes ([((count >> 8) & 0xFF)]) + bytes ([(count & 0xFF)])
_data2 = \
doublechar (src) +\
doublechar (dst) +\
msgtype
msgtype + + (4 - len(dmc)) * ' '
_dmc = dmc + (28 - len(dmc)) * ' '
_start = 14 * ' '
_end = 14 * ' '
@@ -267,19 +270,22 @@ class BDEServer ():
_mbst = ' '
if len (bde):
dmc1, startts, endts, ladungstraeger, seriennr, variante, pruefzelle1, putzzelle, chiron, blindniet, bajonettclip, cclip, masseblech, pruefzelle2, nacharbeit, csv = bde [0]
_t = 0
if 'G11' in variante:
_typ = bytes (1) + bytes (0)
_typ = bytes ([1]) + bytes ([0])
_t = 1
elif 'G3' in variante:
_typ = bytes (2) + bytes (0)
_typ = bytes ([2]) + bytes ([0])
_t = 2
_var = 0
_var = bytes ([0])
if 'RL' in variante:
_var = 1
_var = bytes ([1])
if 'HUD' in variante:
_var = bytes (_typ + 2) + bytes (0)
_var = bytes ([_t + 2]) + bytes ([0])
else:
_var = bytes (_typ) + bytes (0)
_var = bytes ([_t]) + bytes ([0])
_bnst = bauteilstatusRev.get (blindniet)
_bajost = bauteilstatusRev.get (bajonettclip)
@@ -371,7 +377,7 @@ class BDEServer ():
_ccs17 = bearbeitungstatusRev.get (clipstatus17)
_ccs18 = bearbeitungstatusRev.get (clipstatus18)
_ccspace = 'b' * 11
_ccspace = ' ' * 11
mb = DB_con.getmasseblech (dmc)
_ae = ' '
@@ -387,9 +393,10 @@ class BDEServer ():
_bl = bearbeitungstatusRev.get (blindniet)
_km = bearbeitungstatusRev.get (kombimutter)
_mbspace = 'a' * 30
_mbspace = ' ' * 30
_data = _data + _data2.encode () + _dmc.encode () + _start.encode () + _end.encode () + _typ + _var + _bnst.encode () + \
_data += _data2.encode ()
_data += _dmc.encode () + _start.encode () + _end.encode () + _typ + _var + _bnst.encode () + \
_NietM8st01.encode () + _NietM8st02.encode () + _DGBM8st01.encode () + _DGBM8st02.encode () + _DGBM8st03.encode () + _DGBM8st04.encode () + \
_NietM6st01.encode () + _NietM6st02.encode () + _NietM6st03.encode () + _NietM6st04.encode () + _NietM6st05.encode () + ' '.encode () + \
_bnvalues.encode () + \
@@ -398,8 +405,8 @@ class BDEServer ():
_ccs8.encode () + _ccs9.encode () + _ccs10.encode () + _ccs11.encode () + _ccs12.encode () + _ccs13.encode () + _ccs14.encode () + _ccs15.encode () +\
_ccs16.encode () + _ccs17.encode () + _ccs18.encode () + _ccspace.encode () + \
_mbst.encode () + _ae.encode () + _se.encode () + _mb.encode () + _bl.encode () + _km.encode () + _mbspace.encode ()
print (_data[1:30])
self.queue_add (channel, client_id, msgtype, _data)
return
@@ -410,7 +417,6 @@ class BDEServer ():
Generate an QUIT telegram and send it
"""
self. message (3, " generatequit : generate Quit Telegram for %s on channel %s, with quit %d" % (msgtype, channel, quit))
_data = chr ((count >> 8) & 0xFF) + chr (count & 0xFF)
_data = bytes ([((count >> 8) & 0xFF)]) + bytes ([(count & 0xFF)])
_data2 = \
doublechar (src) +\

View File

@@ -1,22 +1,28 @@
bauteilstatus = {'0' : 'n.Durchlaufen',
'1' : 'i.O.',
'2' : 'n.i.O.'}
'2' : 'n.i.O.',
'3' : 'i.O. NA'}
bauteilstatusRev = {'' : '0',
'n.Durchlaufen' : '0',
'i.O.' : '1',
'n.i.O.' : '2'}
'n.i.O.' : '2',
'i.O. NA' : '3'}
bauteilstatusNav = {'' : '',
'n.Durchlaufen' : 'nicht durchlaufen',
'i.O.' : 'i.o durchlaufen',
'i.O. NA' : 'i.o durchlaufen',
'n.i.O.' : 'n.i.o durchlaufen'}
bearbeitungsstatus = {'0' : 'n.Bearbeitet',
'1' : 'i.O.',
'2' : 'n.i.O.'}
'2' : 'n.i.O.',
'3' : 'i.O. NA'}
bearbeitungstatusRev = {'' : '0',
'n.Bearbeitet' : '0',
'i.O.' : '1',
'n.i.O.' : '2'}
'n.i.O.' : '2',
'i.O. NA' : '3'}
bearbeitungstatusNav = {'' : '',
'n.Bearbeitet' : 'nicht durchlaufen',
'i.O.' : 'i.o durchlaufen',
'i.O. NA' : 'i.o durchlaufen',
'n.i.O.' : 'n.i.o durchlaufen'}

View File

@@ -38,6 +38,10 @@ def decode_DM09 (data):
from DM09_tel import fromstring
return fromstring (data)
def decode_PD09 (data):
from PD09_tel import fromstring
return fromstring (data)
def decode_PD10 (data):
from PD10_tel import fromstring
return fromstring (data)
@@ -63,6 +67,7 @@ b'PD06': decode_PD06,
b'PD07': decode_PD07,
b'PD08': decode_PD08,
b'DM09': decode_DM09,
b'PD09': decode_PD09,
b'PD98': decode_PD98,
b'PD99': decode_PD99,
b'PD10': decode_PD10,