from flask_login import LoginManager, UserMixin, login_user, logout_user, login_required, current_user from model.Utilities import RegEx, ResponseHandler, HtmlHelper, ItemCRUDType from model.Log import LogData, LogHelper import config import mysql.connector from mysql.connector import Error from model.ItemCRUD import ItemCRUD class Village: isSuccess = False resultMessage = "" def __init__(self): self.isSuccess = False self.resultMessage = "" def AddVillage(self, request): village = ItemCRUD(itemType=ItemCRUDType.Village) block_id = request.form.get('block_Id') village_name = request.form.get('Village_Name', '').strip() village.AddItem(request=request, parentid=block_id, childname=village_name, storedprocfetch="GetVillageByNameAndBlock", storedprocadd="SaveVillage" ) self.isSuccess = village.isSuccess self.resultMessage = village.resultMessage return #self.isSuccess = False def GetAllVillages(self, request): village = ItemCRUD(itemType=ItemCRUDType.Village) villagesdata = village.GetAllData(request=request, storedproc="GetAllVillages") self.isSuccess = village.isSuccess self.resultMessage = village.resultMessage return villagesdata def CheckVillage(self, request): village = ItemCRUD(itemType=ItemCRUDType.Village) block_id = request.form.get('block_Id') village_name = request.form.get('Village_Name', '').strip() result = village.CheckItem(request=request, parentid=block_id, childname=village_name, storedprocfetch="GetVillageByNameAndBlocks") self.isSuccess = village.isSuccess self.resultMessage = village.resultMessage return result def DeleteVillage(self, request, village_id): village = ItemCRUD(itemType=ItemCRUDType.Village) village.DeleteItem(request=request, itemID=village_id, storedprocDelete="DeleteVillage" ) self.isSuccess = village.isSuccess self.resultMessage = village.resultMessage return def EditVillage(self, request, village_id): corsor=None village = ItemCRUD(itemType=ItemCRUDType.Village) block_id = request.form.get('block_Id') village_name = request.form.get('Village_Name', '').strip() village.EditItem(request=request,childid=village_id,parentid=block_id,childname=village_name,storedprocupdate="UpdateVillage" ) self.isSuccess = village.isSuccess self.resultMessage = village.resultMessage return # def GetVillageByID(self, request, id): # village = ItemCRUD(itemType=ItemCRUDType.Village) # villagedetailsdata = village.GetAllData(request=request, storedproc="GetVillageDetailsById") # self.isSuccess = village.isSuccess # self.resultMessage = village.resultMessage # return villagedetailsdata def GetVillageByID(self, request, id): village = ItemCRUD(itemType=ItemCRUDType.Village) villagedetailsdata = village.GetDataByID(id=id,storedproc="GetVillageDetailsById") if villagedetailsdata: self.isSuccess = True else: self.isSuccess = False self.resultMessage = "Village not found" return villagedetailsdata def GetAllBlocks(self, request): blocks = [] self.isSuccess = False self.resultMessage = "" connection = config.get_db_connection() if not connection: return [] cursor = connection.cursor() try: cursor.callproc('GetAllBlocks') for result in cursor.stored_results(): blocks = result.fetchall() self.isSuccess = True except mysql.connector.Error as e: print(f"Error fetching blocks: {e}") self.isSuccess = False self.resultMessage = HtmlHelper.json_response(ResponseHandler.fetch_failure("block"), 500) finally: cursor.close() connection.close() return blocks