def update_purchase_trx(raw_data, session): purchase_trx_number = raw_data['purchase_trx_number'] purchasetrxheader = session.query(PurchaseTrxHeader).filter_by( purchase_trx_number=purchase_trx_number).first() if purchasetrxheader is None: raise HTTPError(status=status_codes.HTTP_404, errors="Purchase Transaction number does not exist") if 'transaction_date' in raw_data.keys(): purchasetrxheader.transaction_date = raw_data['transaction_date'] if 'order_status' in raw_data.keys(): purchasetrxheader.order_status = raw_data['order_status'] if 'buyer_id' in raw_data.keys(): purchasetrxheader.buyer_id = raw_data['buyer_id'] if 'supplier_id' in raw_data.keys(): purchasetrxheader.supplier_id = raw_data['supplier_id'] if 'last_updated_by' in raw_data.keys(): purchasetrxheader.last_updated_by = get_user_id_by_user_name( raw_data['last_updated_by']) purchasetrxLines = [] if 'purchase_trx_lines' in raw_data.keys(): for purchase_trx_line in raw_data['purchase_trx_lines']: if 'transaction_line_id' in purchase_trx_line.keys(): for trx_line in purchasetrxheader.purchase_trx_lines: if purchase_trx_line[ "transaction_line_id"] == trx_line.transaction_line_id: trx_line.item_id = purchase_trx_line['item_id'] #trx_line.line_number = purchase_trx_line['line_number'] trx_line.booking_unit_price = purchase_trx_line[ 'booking_unit_price'] trx_line.booking_quantity = purchase_trx_line[ 'booking_quantity'] trx_line.unit_of_measure = purchase_trx_line[ 'unit_of_measure'] #trx_line.created_by = purchase_trx_line['created_by'] trx_line.last_updated_by = get_user_id_by_user_name( purchase_trx_line['last_updated_by']) break else: purchasetrxLine = PurchaseTrxLines() purchasetrxLine.item_id = purchase_trx_line['item_id'] purchasetrxLine.line_number = purchase_trx_line['line_number'] purchasetrxLine.booking_unit_price = purchase_trx_line[ 'booking_unit_price'] purchasetrxLine.booking_quantity = purchase_trx_line[ 'booking_quantity'] purchasetrxLine.unit_of_measure = purchase_trx_line[ 'unit_of_measure'] purchasetrxLine.created_by = get_user_id_by_user_name( purchase_trx_line['created_by']) purchasetrxLine.last_updated_by = get_user_id_by_user_name( purchase_trx_line['last_updated_by']) purchasetrxLines.append(purchasetrxLine) if len(purchasetrxLines) > 0: purchasetrxheader.purchase_trx_lines.extend(purchasetrxLines)
def on_put(self, req, resp): try: """ update item data into database """ data = req.context['serialized-data'] user = get_user_id_by_user_name(data['last_updated_by']) data['last_updated_by'] = user update_items(data) output = { 'Status': falcon.HTTP_200, 'Message': "Item Details updated successfully for: " + data['item_number'] } resp.status = falcon.HTTP_200 resp.body = json.dumps(output) except (KeyError, ValueError) as e: error = "{err} field is required..!".format(err=e) resp.body = json.dumps({ "Status": falcon.HTTP_400, 'Error': str(error) }) resp.status = falcon.HTTP_400 except Exception as e: resp.body = json.dumps({ "Status": falcon.HTTP_400, 'Error': str(e) }) resp.status = falcon.HTTP_400 return resp
def on_post(self, req, resp): try: """ Insert Challan Data in database """ data = req.context['serialized-data'] user = get_user_id_by_user_name(data['created_by']) data['last_updated_by'] = user data['created_by'] = user challan_data = create_challan(data) resp.body = json.dumps(challan_data, default=str) resp.status = falcon.HTTP_200 return resp except (KeyError, ValueError) as e: error = "{err} field is required..!".format(err=e) resp.body = json.dumps({ "Status": falcon.HTTP_400, 'Error': str(error) }) resp.status = falcon.HTTP_400 except Exception as e: resp.body = json.dumps({ "Status": falcon.HTTP_400, 'Error': str(e) }) resp.status = falcon.HTTP_400 return resp
def on_post(self, req, resp): try: """ Insert Sales Transaction data into database """ data = req.context['serialized-data'] #data['sales_rep_id'] = get_user_id_by_user_name(data['sales_rep_id']) user = get_user_id_by_user_name(data['created_by']) data['last_updated_by'] = user data['sales_rep_id'] = get_user_id_by_user_name( data['sales_rep_id']) data['created_by'] = user for line in data['sales_trx_lines']: line['last_updated_by'] = user line['created_by'] = user create_sales_trx(data) output = { 'Status': falcon.HTTP_200, 'Message': "Sales Transaction data saved successfully." } resp.status = falcon.HTTP_200 resp.body = json.dumps(output) except (KeyError, ValueError) as e: error = "{err} field is required..!".format(err=e) resp.body = json.dumps({ "Status": falcon.HTTP_400, 'Error': str(error) }) resp.status = falcon.HTTP_400 except Exception as e: resp.body = json.dumps({ "Status": falcon.HTTP_400, 'Error': str(e) }) resp.status = falcon.HTTP_400 return resp
def on_put(self, req, resp): try: """ update customer data into database """ data = req.context['serialized-data'] user = get_user_id_by_user_name(data['last_updated_by']) data['last_updated_by'] = user if 'customer_master_sites' in data.keys(): if len(data['customer_master_sites']) > 0: for line in data['customer_master_sites']: line['last_updated_by'] = user if 'customer_site_id' not in line.keys(): line['created_by'] = user update_customer(data) output = { 'Status': falcon.HTTP_200, 'Message': "Customer data updated successfully for: " + data['customer_code'] } resp.status = falcon.HTTP_200 resp.body = json.dumps(output) except (KeyError, ValueError) as e: error = "{err} field is required..!".format(err=e) resp.body = json.dumps({ "Status": falcon.HTTP_400, 'Error': str(error) }) resp.status = falcon.HTTP_400 except Exception as e: resp.body = json.dumps({ "Status": falcon.HTTP_400, 'Error': str(e) }) resp.status = falcon.HTTP_400 return resp
def on_post(self, req, resp): try: """ Insert Purchase Transaction data into database """ data = req.context['serialized-data'] user = get_user_id_by_user_name(data['created_by']) data['last_updated_by'] = user data['created_by'] = user for line in data['supplier_master_sites']: line['last_updated_by'] = user line['created_by'] = user create_supplier(data) output = { 'Status': falcon.HTTP_200, 'Message': "Supplier Details saved successfully for: " + data['supplier_name'] } resp.status = falcon.HTTP_200 resp.body = json.dumps(output) except (KeyError, ValueError) as e: error = "{err} field is required..!".format(err=e) resp.body = json.dumps({ "Status": falcon.HTTP_400, 'Error': str(error) }) resp.status = falcon.HTTP_400 except Exception as e: resp.body = json.dumps({ "Status": falcon.HTTP_400, 'Error': str(e) }) resp.status = falcon.HTTP_400 return resp
def update_sales_trx(raw_data, session): sales_trx_number = raw_data['sales_trx_number'] salestrxheader = session.query(SalesTrxHeader).filter_by( sales_trx_number=sales_trx_number).first() if salestrxheader is None: raise HTTPError(status=status_codes.HTTP_404, errors="Sales Transaction number does not exist") if 'transaction_date' in raw_data.keys(): salestrxheader.transaction_date = raw_data['transaction_date'] if 'order_status' in raw_data.keys(): salestrxheader.order_status = raw_data['order_status'] if 'sales_rep_id' in raw_data.keys(): salestrxheader.sales_rep_id = raw_data['sales_rep_id'] if 'customer_id' in raw_data.keys(): salestrxheader.customer_id = raw_data['customer_id'] if 'last_updated_by' in raw_data.keys(): salestrxheader.last_updated_by = get_user_id_by_user_name( raw_data['last_updated_by']) salestrxLines = [] if 'sales_trx_lines' in raw_data.keys(): for sales_trx_line in raw_data['sales_trx_lines']: if 'transaction_line_id' in sales_trx_line.keys(): for trx_line in salestrxheader.sales_trx_lines: if sales_trx_line[ "transaction_line_id"] == trx_line.transaction_line_id: if 'item_id' in sales_trx_line: trx_line.item_id = sales_trx_line['item_id'] #trx_line.line_number = sales_trx_line['line_number'] if 'booking_unit_price' in sales_trx_line: trx_line.booking_unit_price = sales_trx_line[ 'booking_unit_price'] if 'booking_quantity' in sales_trx_line: trx_line.booking_quantity = sales_trx_line[ 'booking_quantity'] if 'unit_of_measure' in sales_trx_line: trx_line.unit_of_measure = sales_trx_line[ 'unit_of_measure'] #trx_line.created_by = sales_trx_line['created_by'] trx_line.last_updated_by = get_user_id_by_user_name( sales_trx_line['last_updated_by']) break else: salestrxLine = SalesTrxLines() if 'item_id' in sales_trx_line: salestrxLine.item_id = sales_trx_line['item_id'] if 'line_number' in sales_trx_line: salestrxLine.line_number = sales_trx_line['line_number'] if 'booking_unit_price' in sales_trx_line: salestrxLine.booking_unit_price = sales_trx_line[ 'booking_unit_price'] if 'booking_quantity' in sales_trx_line: salestrxLine.booking_quantity = sales_trx_line[ 'booking_quantity'] if 'unit_of_measure' in sales_trx_line: salestrxLine.unit_of_measure = sales_trx_line[ 'unit_of_measure'] salestrxLine.created_by = get_user_id_by_user_name( sales_trx_line['created_by']) salestrxLine.last_updated_by = get_user_id_by_user_name( sales_trx_line['last_updated_by']) salestrxLines.append(salestrxLine) if len(salestrxLines) > 0: salestrxheader.sales_trx_lines.extend(salestrxLines)
def update_receipt_data(raw_data, session): challan_number = raw_data['challan_number'] challanheader = session.query(ReceiptHeader).filter_by( challan_number=challan_number).first() if challanheader is None: raise HTTPError(status=status_codes.HTTP_404, errors="Challan number does not exist") if 'vehicle_number' in raw_data.keys(): challanheader.vehicle_number = raw_data['vehicle_number'] if 'bata' in raw_data.keys(): challanheader.bata = raw_data['bata'] if 'receipt_header_status' in raw_data.keys(): challanheader.receipt_header_status = raw_data['receipt_header_status'] if 'net_weight' in raw_data.keys(): challanheader.net_weight = raw_data['net_weight'] if 'average_weight' in raw_data.keys(): challanheader.average_weight = raw_data['average_weight'] if 'unit_of_measure' in raw_data.keys(): challanheader.unit_of_measure = raw_data['unit_of_measure'] if 'total_bags' in raw_data.keys(): challanheader.total_bags = raw_data['total_bags'] challanheader.last_updated_by = get_user_id_by_user_name( raw_data['last_updated_by']) challanLines = [] is_receipt_complete = False if 'receipt_lines' in raw_data.keys(): for challan_line in raw_data['receipt_lines']: if 'receipt_line_id' in challan_line.keys(): for challanLine in challanheader.receipt_lines: if challan_line[ "receipt_line_id"] == challanLine.receipt_line_id: if 'item_id' in challan_line.keys(): challanLine.item_id = challan_line['item_id'] if 'description' in challan_line.keys(): challanLine.description = challan_line[ 'description'] if 'line_number' in challan_line.keys(): challanLine.line_number = challan_line[ 'line_number'] if 'load_unload_number' in challan_line.keys(): challanLine.load_unload_number = challan_line[ 'load_unload_number'] if 'load_unload_area' in challan_line.keys(): challanLine.load_unload_area = challan_line[ 'load_unload_area'] if 'weighing_number' in challan_line.keys(): challanLine.weighing_number = challan_line[ 'weighing_number'] if 'receipt_line_status' in challan_line.keys(): challanLine.receipt_line_status = challan_line[ 'receipt_line_status'] if 'quantity' in challan_line.keys(): challanLine.quantity = challan_line['quantity'] if 'number_of_bags' in challan_line.keys(): challanLine.number_of_bags = challan_line[ 'number_of_bags'] if 'unit_price' in challan_line.keys(): challanLine.unit_price = challan_line['unit_price'] if 'unit_of_measure' in challan_line.keys(): challanLine.unit_of_measure = challan_line[ 'unit_of_measure'] if 'discount' in challan_line.keys(): challanLine.discount = challan_line['discount'] if 'last_updated_by' in challan_line.keys(): challanLine.last_updated_by = get_user_id_by_user_name( challan_line['last_updated_by']) if challan_line['receipt_line_status'] == 'COMPLETE': is_receipt_complete = is_receipt_complete or True else: is_receipt_complete = is_receipt_complete and False break else: challanLine = ReceiptLines() if 'item_id' in challan_line.keys(): challanLine.item_id = challan_line['item_id'] if 'description' in challan_line.keys(): challanLine.description = challan_line['description'] if 'line_number' in challan_line.keys(): challanLine.line_number = challan_line['line_number'] if 'load_unload_number' in challan_line.keys(): challanLine.load_unload_number = challan_line[ 'load_unload_number'] if 'load_unload_area' in challan_line.keys(): challanLine.load_unload_area = challan_line[ 'load_unload_area'] if 'weighing_number' in challan_line.keys(): challanLine.weighing_number = challan_line[ 'weighing_number'] if 'receipt_line_status' in challan_line.keys(): challanLine.receipt_line_status = challan_line[ 'receipt_line_status'] if 'quantity' in challan_line.keys(): challanLine.quantity = challan_line['quantity'] if 'number_of_bags' in challan_line.keys(): challanLine.number_of_bags = challan_line['number_of_bags'] if 'unit_price' in challan_line.keys(): challanLine.unit_price = challan_line['unit_price'] if 'unit_of_measure' in challan_line.keys(): challanLine.unit_of_measure = challan_line[ 'unit_of_measure'] if 'discount' in challan_line.keys(): challanLine.discount = challan_line['discount'] if 'last_updated_by' in challan_line.keys(): challanLine.last_updated_by = get_user_id_by_user_name( challan_line['last_updated_by']) challanLine.created_by = get_user_id_by_user_name( challan_line['last_updated_by']) challanLines.append(challanLine) is_receipt_complete = is_receipt_complete and False if len(challanLines) > 0: challanheader.receipt_lines.extend(challanLines) else: if is_receipt_complete: challanheader.receipt_header_status = 'COMPLETE' challanheader.receipt_date = datetime.datetime.utcnow()