def sync_segy_file_size(self): """ This is only necessary because I did not put the extraction of file size in the orignal release search the database for all the elements in the segy_on_disk qc where segy_on_disk_qc_status is True and segy file size in Null """ result = self.db_connection_obj.sess.query( self.db_connection_obj.SEGY_QC_on_disk).filter( self.db_connection_obj.SEGY_QC_on_disk.segy_on_disk_qc_status == True).filter(self.db_connection_obj.SEGY_QC_on_disk. file_size == None).all() # Now for each element parse the log and fill file size if len(result) == 0: logger.info(" All file size in segy on disk table already present") else: for a_item in result: logger.info("Now updating file size for: deliverable_id: " + str(a_item.deliverable_id) + " linename: " + a_item.line_name) encoded_data = return_encoded_log( self.DUG_connection_obj, a_item.segy_on_disk_qc_log_path) log_data = encoded_data.decode('base64') for line in log_data.split('\n'): if file_size_identifier in line.rstrip("\n"): line_to_use = line.rstrip("\n") line_list = line_to_use.split() a_item.file_size = line_list[len(line_list) - 2] self.db_connection_obj.sess.commit() logger.info("file size update complete ..")
def show_log(self): sender = self.sender() obj_name = str(sender.objectName()) # print obj_name self.id_segy_qc = obj_name segy_w_log_path = self.segy_write_obj_dict_set_wise[int( obj_name)].segy_w_path self.segy_w_log_path = segy_w_log_path self.db_connection_obj.sess.flush() self.tape_write_obj_to_change = self.db_connection_obj.sess.query( self.db_connection_obj.SEGY_write).filter( self.db_connection_obj.SEGY_write.segy_w_path == segy_w_log_path).filter(self.db_connection_obj.SEGY_write. id_segy_qc == obj_name).first() logger.info("Now Fetching: " + segy_w_log_path) encoded_string = return_encoded_log( DUG_connection_obj=self.DUG_connection_obj, log_path=segy_w_log_path) message = encoded_string.decode('base64') self.pop_up_approval = pop_up_approval_box_segy_write(message=message) self.pop_up_approval.closed.connect(self.approve_log) self.pop_up_approval.approve_all.connect( self.approve_all_files_on_tape) self.pop_up_approval.setMinimumWidth(600) self.pop_up_approval.show()
def show_QC_log(self): sender = self.sender() obj_name = str(sender.objectName()) encoded_string = return_encoded_log(DUG_connection_obj=self.DUG_connection_obj, log_path=obj_name) log_data = encoded_string.decode('base64') title = obj_name self.log_viewer = SEGY_qc_log(self,log_data,title,self.deliverable.type) self.log_viewer.closed.connect(self.show) self.log_viewer.setMinimumWidth(1000) self.log_viewer.show()
def show_log(self): sender = self.sender() obj_name = str(sender.objectName()) self.db_connection_obj.sess.flush() self.tape_write_obj_to_change = self.db_connection_obj.sess.query(self.db_connection_obj.SEGY_write).filter( self.db_connection_obj.SEGY_write.segy_w_path == obj_name).first() encoded_string = return_encoded_log(DUG_connection_obj=self.DUG_connection_obj, log_path=obj_name) message = encoded_string.decode('base64') self.pop_up_approval = pop_up_approval_box(message=message) self.pop_up_approval.closed.connect(self.approve_log) self.pop_up_approval.show()
def connect_to_log(self): sender = self.sender() obj_name = str(sender.objectName()) data_obj = self.data_dict[obj_name] log_path = data_obj.sgyt_unix_path #now feteh the data from the path and print it encoded_string = return_encoded_log(DUG_connection_obj=self.DUG_connection_obj, log_path=log_path) ebcdic = return_ebcdic_from_sgyt(encoded_string.decode('base64')) title = log_path self.ebcdic_text_box = pop_up_text_box_view_only("", title) for i in range(0, 3201, 80): self.ebcdic_text_box.text_edit.append(ebcdic[i:i + 80]) self.ebcdic_text_box.closed.connect(self.show) self.ebcdic_text_box.resize(800, 700) self.ebcdic_text_box.show()
def show_log(self): sender = self.sender() obj_name = str(sender.objectName()) obj_name_list = obj_name.split("-") tape_no = obj_name_list[0] set_no = obj_name_list[1] log_path = return_SEGD_QC_log_path(self.db_connection_obj,tape_no = tape_no,set_no=set_no) encoded_string = return_encoded_log(DUG_connection_obj = self.DUG_connectioni_obj,log_path = log_path) text_to_show = encoded_string.decode('base64') #print text_to_show #print text_to_show title = str("SEGD QC log for tape no: " + tape_no + " set no: " + set_no) self.pop_up_text_box = pop_up_text_box_view_only(text_to_show,title = title) self.pop_up_text_box.closed.connect(self.show) self.pop_up_text_box.resize(1500, 1000) self.pop_up_text_box.show()