Beispiel #1
0
 def searchTransactions(self, args):
     apl_ID = args.get("apl_ID")
     supp_ID = args.get("supp_ID")
     date = args.get("date")
     status = args.get("status")
     dao = transactionsDAO()
     transactions_list = []
     if (len(args) == 2) and apl_ID and date:
         transactions_list = dao.getTransactionsByApplicantsIDandDate(
             apl_ID, date)
     elif (len(args) == 2) and supp_ID and status:
         transactions_list = dao.getTransactionsBySuppliersIDandStatus(
             supp_ID, status)
     elif (len(args) == 2) and apl_ID and status:
         transactions_list = dao.getTransactionsByApplicantsIDandStatus(
             apl_ID, status)
     elif (len(args) == 2) and supp_ID and date:
         transactions_list = dao.getTransactionsBySuppliersIDandDate(
             supp_ID, date)
     elif (len(args) == 1) and status:
         transactions_list = dao.getTransactionsByStatus(status)
     elif (len(args) == 1) and date:
         transactions_list = dao.getTransactionsByDate(date)
     else:
         return jsonify(Error="Malformed query string"), 400
     result_list = []
     for row in transactions_list:
         result = self.build_transactions_dict(row)
         result_list.append(result)
     return jsonify(Transactions=result_list)
Beispiel #2
0
 def getTransactionsBySuppliersID(self, supp_ID):
     dao = transactionsDAO()
     transactions = dao.getTransactionsBySuppliersID(supp_ID)
     result_list = []
     for row in transactions:
         result = self.build_transactions_dict(row)
         result_list.append(result)
     return jsonify(Transactions=result_list)
Beispiel #3
0
 def getTransactionByID(self, trans_ID):
     dao = transactionsDAO()
     row = dao.getTransactionsByID(trans_ID)
     if not row:
         return jsonify(Error="Part Not Found"), 404
     else:
         transaction = self.build_transactions_dict(row)
         return jsonify(Transaction=transaction)
Beispiel #4
0
 def getAllTransactions(self):
     dao = transactionsDAO()
     transactions = dao.getAllTransactions()
     result_list = []
     for row in transactions:
         result = self.build_transactions_dict(row)
         result_list.append(result)
     return jsonify(Transactions=result_list)
Beispiel #5
0
 def insertTransaction(self, form):
     if len(form) != 4:
         return jsonify(Error="Malform post request"), 400
     else:
         card_num = form['card_num']
         res_ID = form['res_ID']
         trans_date = form['trans_date']
         status = form['status']
         if card_num and res_ID and trans_date and status:
             dao = transactionsDAO()
             trans_ID = dao.insert(card_num, res_ID, trans_date, status)
             dao.insertPurchase(res_ID, trans_ID)
             dao.insertOwns(trans_ID, res_ID)
             dao.insertFulfill(trans_ID, res_ID)
             result = self.build_transactions_attributes(
                 trans_ID, card_num, res_ID, trans_date, status)
             return jsonify(Transaction=result), 201
         else:
             return jsonify(
                 Error="Unexpected attributes in post request"), 400
Beispiel #6
0
 def updateTransaction(self, trans_ID, form):
     dao = transactionsDAO()
     if not dao.getTransactionByTransID(trans_ID):
         return jsonify(Error="Transaction not found"), 404
     else:
         if len(form) != 4:
             return jsonify(Error="Malform update request"), 400
         else:
             trans_ID = form['trans_ID']
             card_num = form['card_num']
             acct_num = form['acct_num']
             trans_date = form['trans_date']
             status = form['status']
             amount = form['amount']
             if trans_ID and card_num and acct_num and trans_ID and trans_date and amount:
                 dao.updateTransaction(status, trans_ID)
                 result = self.build_transactions_attributes(
                     trans_ID, card_num, acct_num, trans_date, status,
                     amount)
                 return jsonify(Transaction=result), 200
             else:
                 return jsonify(
                     Error="Unexpected attributes in updates request"), 400