Пример #1
0
def updateStatus(LawyerID,
                 ClientID,
                 Status,
                 AccusedID='',
                 Type='',
                 FilingNo=''):
    '''LAWYER: Update request status'''
    query = 'UPDATE Lawyer_Request SET Status = %s WHERE LawyerID = %s AND ClientID = %s'
    param = (Status, LawyerID, ClientID)
    res = insertUpdateDeleteWrapper(query, param)

    if (Status == 2):
        return res
    else:
        # CIVIL
        if (Type == 0):
            query = 'INSERT INTO Pending_Cases (FilingDate, VictimID, Victim_LawyerID, Type) VALUES (CURDATE(), %s, %s, %s)'
            param = (ClientID, LawyerID, Type)
            return insertUpdateDeleteWrapper(query, param)

        # CRIME
        else:
            if (not AccusedID and not FilingNo):
                query = 'UPDATE Lawyer_Request SET Status = 0 WHERE LawyerID = %s AND ClientID = %s'
                param = (LawyerID, ClientID)
                res = insertUpdateDeleteWrapper(query, param)
                return {'res': 'failed'}

            if (not FilingNo):
                query = 'INSERT INTO Pending_Cases (FilingDate, VictimID, Victim_LawyerID, AccusedID, Type) VALUES (CURDATE(), %s, %s, %s, %s)'
                param = (ClientID, LawyerID, AccusedID, Type)
                return insertUpdateDeleteWrapper(query, param)

            else:
                return attachAccusedLawyer(FilingNo, LawyerID)
Пример #2
0
def appointLawyer(FirmID, ClientID, Status, LawyerID=""):
    '''FIRM: Appoint a lawyer to a client'''
    query = "UPDATE Firm_Request SET Status = %s where FirmID = %s and ClientID = %s"
    param = (
        Status,
        FirmID,
        ClientID,
    )
    result = insertUpdateDeleteWrapper(query, param)
    if (Status == 2):
        return result
    else:
        query = "SELECT * from Firm_Request where FirmID = %s and ClientID = %s"
        param = (
            FirmID,
            ClientID,
        )
        res = selectWrapper(query, param)
        if (res['res'] == 'failed'):
            return res
        else:
            values = res['arr'][0]
            query = "INSERT into Lawyer_Request(ClientID, LawyerID, FilingNo, Client_Note, Quotation, Status) VALUES(%s,%s,%s,%s,%s,0)"
            param = (
                ClientID,
                LawyerID,
                values['FilingNo'],
                values['Client_Note'],
                values['Quotation'],
            )
            return insertUpdateDeleteWrapper(query, param)
Пример #3
0
def updateCaseStatements(CNRno, VictimStmnt='', AccusedStmnt='', Acts=''):
    '''OFFICER: Update Victime Statements, Add acts'''

    result = {}

    if (not VictimStmnt and not AccusedStmnt and not Acts):
        return {'res': 'failed', 'type': 'empty params'}

    if (VictimStmnt):
        query = "UPDATE Active_Cases SET VictimStmnt = %s WHERE CNRno = %s"
        param = (VictimStmnt, CNRno)
        result = insertUpdateDeleteWrapper(query, param)

        if (result['res'] == 'failed'):
            return result

    if (AccusedStmnt):
        query = "UPDATE Active_Cases SET AccusedStmnt = %s WHERE CNRno = %s"
        param = (AccusedStmnt, CNRno)
        result = insertUpdateDeleteWrapper(query, param)

        if (result['res'] == 'failed'):
            return result

    if (Acts):
        query = "UPDATE Active_Cases SET Acts = %s WHERE CNRno = %s"
        param = (Acts, CNRno)
        result = insertUpdateDeleteWrapper(query, param)

        if (result['res'] == 'failed'):
            return result

    return result
Пример #4
0
def firmRequest(ClientID, FirmID, Client_Note, Quotation, FilingNo=''):
    '''CLIENT: insert to lawyer request table'''
    if (FilingNo):
        query = 'INSERT INTO Firm_Request (ClientID, FirmID, Client_Note, Quotation, FilingNo) VALUES (%s, %s, %s, %s, %s)'
        param = (ClientID,FirmID,Client_Note,Quotation,FilingNo)
        res = insertUpdateDeleteWrapper(query, param)
    else:
        query = 'INSERT INTO Firm_Request (ClientID, FirmID, Client_Note, Quotation) VALUES (%s, %s, %s, %s)'
        param = (ClientID,FirmID,Client_Note,Quotation)
        res = insertUpdateDeleteWrapper(query, param)
    return res
Пример #5
0
def addHearing(CNR, PrevHearing, NextHearing, Purpose):
    '''OFFICER: Add hearings'''
    query = "UPDATE Active_Cases SET NextHearing = %s, PrevHearing = %s, Stage = Stage + 1 WHERE CNRno = %s"
    param = (NextHearing, PrevHearing, CNR)
    res = insertUpdateDeleteWrapper(query, param)

    if (res['res'] == 'failed'):
        return res

    query = "INSERT into Hearings(Date, CNRno, Prev_date, Purpose) VALUES(%s,%s,%s,%s)"
    param = (NextHearing, CNR, PrevHearing, Purpose)
    return insertUpdateDeleteWrapper(query, param)
Пример #6
0
def fileFIR(FilingNo, InspectorName, Description):
    '''OFFICER: File FIR'''
    query = "INSERT into FIR(FilingNo, InspectorName, Description) values(%s,%s,%s)"
    param = (FilingNo, InspectorName, Description)
    res = insertUpdateDeleteWrapper(query, param)

    if (res['res'] == 'failed'):
        return res

    query = "UPDATE Pending_Cases SET Fir_Uploaded = 1 WHERE FilingNo = %s"
    param = (FilingNo, )
    return insertUpdateDeleteWrapper(query, param)
Пример #7
0
def announceVerdict(CNRno, Victim_LawyerID, CaseStmnt, FinalVerdict , WonID_Client, WonID_Lawyer, Accused_LawyerID=None):
	'''JUDGE: Announce final verdict for a case'''
	result = viewCase(CNRno) #values extracted from Active_Cases

	if(result['res'] == 'failed'):
		return result
	
	if(result['arr'][0]['Stage'] == 0):
		return {'res': 'failed', 'type':'Case is still at Stage 0'}

	if(not result['arr'][0]['Acts']):
		return {'res': 'failed', 'type':'No acts given'}

	if(result['res'] == 'success'):
		values = result['arr'][0]

		query = "INSERT INTO Closed_Cases(CNRno, FilingNo, FilingDate, JudgeID, VictimID, Victim_LawyerID, AccusedID, Accused_LawyerID, CaseStmnt, Acts, FinalVerdict, Verdict_Date, WonID_Client, WonID_Lawyer) VALUES (%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,CURDATE(),%s,%s);"
		param = (CNRno, values['FilingNo'], values['FilingDate'], values['JudgeID'], values['VictimID'], Victim_LawyerID, values['AccusedID'], Accused_LawyerID, CaseStmnt, values['Acts'], FinalVerdict, WonID_Client, WonID_Lawyer,)

		intermediate_res = insertUpdateDeleteWrapper(query, param)

		if(intermediate_res['res'] == 'failed'):
			return intermediate_res

		if(not Accused_LawyerID):
			Accused_LawyerID = None

		query = "SET FOREIGN_KEY_CHECKS = OFF"
		param = ()
		res = insertUpdateDeleteWrapper(query, param)

		query = "DELETE from Active_Cases WHERE CNRno=%s"
		param = (CNRno,)
		res1 = insertUpdateDeleteWrapper(query, param)

		query = "SET FOREIGN_KEY_CHECKS = ON"
		param = ()
		res = insertUpdateDeleteWrapper(query, param)

		if(res1['res'] == 'failed'):
			query = "DELETE FROM Closed_Cases WHERE CNRno = %s"
			param = (CNRno,)
			temp = insertUpdateDeleteWrapper(query, param)
			
			return res1
	
		return intermediate_res
	
	return {"res": "failed"}
Пример #8
0
def addDocument(ClientID, FilingNo, Doc):
    '''CLIENT: insert Document'''
    query = 'INSERT INTO Documents (ClientID, FilingNo, Doc) VALUES (%s, %s, %s)'
    param = (ClientID,FilingNo,Doc)
    res = insertUpdateDeleteWrapper(query, param)
    if(res['res'] == 'failed'):
        return res
    else:
        query = 'UPDATE Pending_Cases SET Doc_Uploaded_Victim = 1 WHERE VictimID=%s AND FilingNo=%s'
        param = (ClientID,FilingNo)
        res = insertUpdateDeleteWrapper(query, param)
        if (res['res'] == 'failed'):
            query = 'UPDATE Pending_Cases SET Doc_Uploaded_Accused = 1 WHERE AccusedID=%s AND FilingNo=%s'
            param = (ClientID,FilingNo)
            res = insertUpdateDeleteWrapper(query, param)
            return res
        else:
            return res
Пример #9
0
def verifyDoc(FilingNo, Type):
    '''OFFICER: Verify Document'''
    if (Type == 0):
        query = "UPDATE Pending_Cases SET is_Verified = 1 WHERE FilingNo = %s AND Doc_Uploaded_Victim = 1"

    else:
        query = "UPDATE Pending_Cases SET is_Verified = 1 WHERE FilingNo = %s AND AccusedID IS NOT NULL AND Accused_LawyerID IS NOT NULL AND Fir_Uploaded = 1 AND Doc_Uploaded_Victim = 1 AND Doc_Uploaded_Accused = 1"

    param = (FilingNo, )
    return insertUpdateDeleteWrapper(query, param)
Пример #10
0
def acceptCase(FilingNo, FirstHearing, CourtNo, JudgeID):
	'''JUDGE: Accept a pending case'''

	query = "SELECT * from Pending_Cases where is_Verified = 1 AND FilingNo = %s"
	param = (FilingNo,)
	res = selectWrapper(query, param)

	if(res['res'] == 'failed' or len(res['arr'])==0):
		return {'res': 'failed', 'type': 'some error occured please recheck param values.'}

	data = res['arr'][0]

	#delete from pending cases
	query = "SET FOREIGN_KEY_CHECKS = OFF"
	param = tuple()
	res = insertUpdateDeleteWrapper(query, param)

	query = "DELETE from Pending_Cases where FilingNo=%s"
	param = (FilingNo,)
	result =  insertUpdateDeleteWrapper(query, param)
	
	query = "SET FOREIGN_KEY_CHECKS = ON"
	param = tuple()
	res = insertUpdateDeleteWrapper(query, param)

	if(result['res'] == 'failed'):
		return result

	#add to active cases
	query = "INSERT into Active_Cases(FilingNo, FilingDate, FirstHearing, NextHearing, CourtNo, JudgeID, VictimID, AccusedID) VALUES(%s,%s,%s,%s,%s,%s,%s,%s)"
	param = (FilingNo, data['FilingDate'], FirstHearing, FirstHearing, CourtNo, JudgeID, data['VictimID'], data['AccusedID'])
	result = insertUpdateDeleteWrapper(query, param)

	if(result['res'] == 'failed'):
		return result

	#add to lawyer client
	query = "SELECT CNRno from Active_Cases where FilingNo = %s"
	param = (FilingNo,)
	result = selectWrapper(query, param)

	if(result['res'] == 'failed'):
		return result

	res = result['arr'][0]
	CNR = res['CNRno']

	query = "INSERT into Lawyer_Client(LawyerID, ClientID, CNRno, Side) VALUES(%s,%s,%s,0)"
	param = (data['Victim_LawyerID'], data['VictimID'], CNR)
	result = insertUpdateDeleteWrapper(query, param)

	if(result['res'] == 'failed'):
		return result

	if(data['Type'] == 1):
		query = "INSERT into Lawyer_Client(LawyerID, ClientID, CNRno, Side) VALUES(%s,%s,%s,1)"
		param = (data['Accused_LawyerID'], data['AccusedID'], CNR)
		result = insertUpdateDeleteWrapper(query, param)

	return result
Пример #11
0
def withdrawCase(Case_ID, VictimID):
    '''CLIENT: withdraw cases'''

    query = "SET FOREIGN_KEY_CHECKS = OFF"
    param = ()
    res1 = insertUpdateDeleteWrapper(query, param)

    query = 'DELETE FROM Pending_Cases WHERE FilingNo = %s AND VictimID = %s AND is_Verified = 0'
    param = (Case_ID, VictimID)
    res = insertUpdateDeleteWrapper(query, param)

    query = "SET FOREIGN_KEY_CHECKS = ON"
    param = ()
    res1 = insertUpdateDeleteWrapper(query, param)
    
    if(res['res'] == 'failed' and 'err' not in res):
        if('err' not in res.keys()):
            
            query = "SET FOREIGN_KEY_CHECKS = OFF"
            param = ()
            res1 = insertUpdateDeleteWrapper(query, param)

            query = 'DELETE FROM Active_Cases WHERE CNRno = %s'
            param = (Case_ID,)
            res = insertUpdateDeleteWrapper(query, param)
            
            query = "SET FOREIGN_KEY_CHECKS = ON"
            param = ()
            res1 = insertUpdateDeleteWrapper(query, param)

            return res
        return res
    return res
Пример #12
0
def recruitLawyer(FirmID, LawyerID):
    '''FIRM: recruit lawyer'''
    query = 'UPDATE Lawyers SET FirmID = %s WHERE ID = %s'
    param = (FirmID, LawyerID)
    return insertUpdateDeleteWrapper(query, param)
Пример #13
0
def attachAccusedLawyer(FilingNo, Accused_LawyerID):
    '''LAWYER: Update attach accused lawyer to pending case'''
    query = 'UPDATE Pending_Cases SET Accused_LawyerID = %s WHERE FilingNo = %s'
    param = (Accused_LawyerID, FilingNo)
    return insertUpdateDeleteWrapper(query, param)
Пример #14
0
def createPaymentRequest(LawyerID, ClientID, Fee, CNRno):
    '''LAWYER: Create payment request'''
    query = 'UPDATE Lawyer_Client SET isRequested = 1, Fee = %s WHERE ClientID = %s AND LawyerID = %s AND CNRno = %s'
    param = (Fee, ClientID, LawyerID, CNRno)
    return insertUpdateDeleteWrapper(query, param)
Пример #15
0
def makePayment(ClientID, LawyerID, CNRno):
    '''CLIENT: Make Payment'''
    query = 'UPDATE Lawyer_Client SET isPaid = 1, datePaid = %s WHERE ClientID = %s AND LawyerID = %s AND CNRno = %s'
    param = (datetime.datetime.now().strftime('%Y-%m-%d'), ClientID, LawyerID, CNRno)
    return insertUpdateDeleteWrapper(query, param)