From 9bee77d54906be5661f66a3ea14b7694e49579f1 Mon Sep 17 00:00:00 2001 From: saravanakumar_kandasami Date: Tue, 2 May 2017 18:21:50 +0530 Subject: [PATCH] models added --- application/models/payroll_model.php | 167 ++++++++++++ application/models/purchaseorder_model.php | 291 +++++++++++++++++++++ 2 files changed, 458 insertions(+) create mode 100644 application/models/payroll_model.php create mode 100644 application/models/purchaseorder_model.php diff --git a/application/models/payroll_model.php b/application/models/payroll_model.php new file mode 100644 index 00000000..dc42a23e --- /dev/null +++ b/application/models/payroll_model.php @@ -0,0 +1,167 @@ +db->insert('T_Payroll_File', $FileDetails); + + $Payon = $this->db->affected_rows(); + + return $Payon; + } + /** + * This function is used to update the File details in which is already exists in the database + * @FileDetails array : This will have the set of value which we need to insert into database + * @return number boolean: success of the updation + */ + function UpdateFileName($FileDetails, $PayOn) + { + //echo $EmpID; + $this->db->where('PayOn', $PayOn); + $this->db->update('T_Payroll_File', $FileDetails); + //print_r($this->db->last_query()); + return TRUE; + } + /** + * This function is used to check the File details is already exists in the database or not + * @FileDetails array : This will have the set of value which we need to insert into database + * @return number boolean: success of the updation + */ + function checkFileDetailsExists($PayOn) + { + $this->db->select('PayOn'); + $this->db->from('T_Payroll_File'); + $this->db->where('PayOn',$PayOn); + + $query = $this->db->get(); + // print_r($this->db->last_query()); + if ($query->num_rows > 0) { + return $query->result(); + } + } + /** + * This function is used to insert the File data in database + * @FileDetails array : This will have the set of value which we need to insert into database + * @return number $Payon : Insert row count will be the return value + */ + function UploadFileData($FileData) + { + $this->db->insert('T_Payroll', $FileData); + + $Payon = $this->db->affected_rows(); + //print_r($this->db->last_query()); + return $Payon; + } + + /** + * This function is used to update the File details in which is already exists in the database + * @FileDetails array : This will have the set of value which we need to insert into database + * @return number boolean: success of the updation + */ + function UpdateFiledata($FileData, $PayOn,$EmpId) + { + //echo $EmpID; + $this->db->where('PayOn', $PayOn); + $this->db->where('EmpID', $EmpId); + $this->db->update('T_Payroll', $FileData); + //print_r($this->db->last_query()); + //print_r($this->db->last_query()); + return TRUE; + } + + /** + * This function is used to get the data details in which is already exists in the database + * @FileDetails array : This will have the set of value which we need to insert into database + * @return number boolean: success of the updation + */ + function GetPayslipdata($PayOn='',$EmpId='') + { + $this->db->select('Pay.*,payfile.TotalNoofDays as TotalNoofDays ,Emp.FirstName as FName ,Emp.LastName as Lname,Emp.DateofBirth as Dob,Emp.PANNo as Pan,Emp.BankBranchName as BankName,Emp.IFSCCode as IFSCCode,Emp.DateofJoining as DOJ,Emp.Designation as Designation,Dep.DepartmentName as DeptName'); + $this->db->from('T_Payroll Pay'); + $this->db->join('T_Payroll_File payfile', 'Pay.PayOn = payfile.PayOn'); + $this->db->join('T_Employee_Details Emp', 'Pay.EmpID = Emp.EmpID'); + $this->db->join('T_DepartmentDetails Dep', 'Emp.Departmentcode = Dep.DEPCode'); + $this->db->where('Pay.PayOn', $PayOn); + if($EmpId != '') + { + $this->db->where('Pay.EmpID', $EmpId); + } + + $this->db->order_by("Pay.EmpID", "asc"); + + $query = $this->db->get(); + + return $query->result(); + } + + /* *//** + * This function is used to get the PayOn details from T_Payroll_File + * @return array $result : This is result of the query + */ + function getPayOn() + { + $this->db->select('PayOn'); + $this->db->from('T_Payroll_File'); + $query = $this->db->get(); + return $query->result(); + } + + /* *//** + * This function is used to get the PayOn details from T_Payroll_File + * @return array $result : This is result of the query + */ + function getEmployeelist($Payon ='') + { + $this->db->select('Pay.EmpID as EmpId,Emp.FirstName as Fname,Emp.LastName as Lname'); + $this->db->from('T_Payroll Pay'); + $this->db->join('T_Employee_Details Emp', 'Pay.EmpID = Emp.EmpID'); + if($Payon != '') + { + $this->db->where('Pay.PayOn', $Payon); + } + $this->db->order_by("Pay.EmpID", "asc"); + + $query = $this->db->get(); + return $query; + } + + /* *//** + * This function is used to get the PayOn details from T_Payroll_File + * @return array $result : This is result of the query + */ + function getEmpAll($Payon ='') + { + $this->db->select('Pay.EmpID as EmpId,Emp.FirstName as Fname,Emp.LastName as Lname'); + $this->db->from('T_Payroll Pay'); + $this->db->join('T_Employee_Details Emp', 'Pay.EmpID = Emp.EmpID'); + if($Payon != '') + { + $this->db->where('Pay.PayOn', $Payon); + } + $this->db->order_by("Pay.EmpID", "asc"); + + $query = $this->db->get(); + return $query->result_array(); + } + + /* *//** + * This function is used to delete the PayOn details from T_Payroll + * @return array $result : This is result of the query + */ + function deleteFileData($PayOn='') + { + + $this->db->where("PayOn", $PayOn); + + $this->db->delete('T_Payroll'); + + } +} +?> \ No newline at end of file diff --git a/application/models/purchaseorder_model.php b/application/models/purchaseorder_model.php new file mode 100644 index 00000000..a841f97a --- /dev/null +++ b/application/models/purchaseorder_model.php @@ -0,0 +1,291 @@ +db->select('BaseT.PONO, BaseT.POType, BaseT.PODate, ID.SupplierID,BaseT.SpecialOrder, users.UserID,BaseT.RequesterEmail,BaseT.RequesterPh,BaseT.RequestedDate,BaseT.BudgetManager,BaseT.BudgetManagerDepartment,BaseT.PurchasingCategory'); + $this->db->from('T_PurchaseOrderDetails as BaseT'); + $this->db->join('tbl_users as users', 'users.userId = BaseT.userId','left'); + $this->db->join('T_SupplierDetailsN as ID', 'ID.SupplierID = BaseT.SupplierID','left'); + if(!empty($searchText)) { + $likeCriteria = "(BaseT.PONO LIKE '%".$searchText."%' + OR BaseT.POType LIKE '%".$searchText."%' + OR BaseT.PODate LIKE '%".$searchText."%' + OR BaseT.SupplierID LIKE '%".$searchText."%' + OR BaseT.UserID LIKE '%".$searchText."%' + OR BaseT.RequesterEmail LIKE '%".$searchText."%' + OR BaseT.RequesterPh LIKE '%".$searchText."%' + OR BaseT.RequestedDate LIKE '%".$searchText."%' + OR BaseT.BudgetManager LIKE '%".$searchText."%' + OR BaseT.BudgetManagerDepartment LIKE '%".$searchText."%' + OR BaseT.PurchasingCategory LIKE '%".$searchText."%' + OR BaseT.SpecialOrder LIKE '%".$searchText."%')"; + $this->db->where($likeCriteria); + } + //$this->db->where('BaseT.isDeleted', 0); + $this->db->where('BaseT.userId !=', 1); + $query = $this->db->get(); + + return count($query->result()); + } + + /** + * This function is used to get the user listing count + * @param string $searchText : This is optional search text + * @param number $page : This is pagination offset + * @param number $segment : This is pagination limit + * @return array $result : This is result + */ + function purchaseorderListing($searchText = '', $page, $segment) + { + $this->db->select('BaseT.PONO, BaseT.POType, BaseT.PODate, ID.SupplierID,BaseT.SpecialOrder, users.UserID,BaseT.RequesterEmail,BaseT.RequesterPh, BaseT.RequestedDate, BaseT.BudgetManager, BaseT.BudgetManagerDepartment, BaseT.PurchasingCategory'); + $this->db->from('T_PurchaseOrderDetails as BaseT'); + $this->db->join('tbl_users as users', 'users.userId = BaseT.userId','left'); + $this->db->join('T_SupplierDetailsN as ID', 'ID.SupplierID = BaseT.SupplierID','left'); + if(!empty($searchText)) { + $likeCriteria = "(BaseT.PONO LIKE '%".$searchfield."%' + OR BaseT.POType LIKE '%".$searchText."%' + OR BaseT.PODate LIKE '%".$searchText."%' + OR BaseT.SupplierID LIKE '%".$searchText."%' + OR BaseT.UserID LIKE '%".$searchText."%' + OR BaseT.RequesterEmail LIKE '%".$searchText."%' + OR BaseT.RequesterPh LIKE '%".$searchText."%' + OR BaseT.RequestedDate LIKE '%".$searchText."%' + OR BaseT.BudgetManager LIKE '%".$searchText."%' + OR BaseT.BudgetManagerDepartment LIKE '%".$searchText."%' + OR BaseT.PurchasingCategory LIKE '%".$searchText."%' + OR BaseT.SpecialOrder LIKE '%".$searchText."%')"; + $this->db->where($likeCriteria); + } + //$this->db->where('BaseT.isDeleted', 0); + //$this->db->where('BaseT.userId !=', 1); + $this->db->limit($page, $segment); + $query = $this->db->get(); + + $result = $query->result(); + return $result; + } + + /** + * This function is used to get the SupplierID and SupplierName information + * @return array $result : This is result of the query + */ + function getSupplierName() + { + $this->db->select('SupplierID, SupplierName,Address'); + $this->db->from('T_SupplierDetailsN'); + //$this->db->where('roleId !=', 1); + $query = $this->db->get(); + + return $query->result(); + } + /** + * This function is used to get the userId information + * @return array $result : This is result of the query + */ + function getusers() + { + $this->db->select('userId, name'); + $this->db->from('tbl_users'); + //$this->db->where('roleId !=', 1); + $query = $this->db->get(); + + return $query->result(); + } + + /** + * This function is used to get the Raw Material information + * @return array $result : This is result of the query + */ + function getRawMaterialList() + { + + $this->db->select('MaterialCode, MaterialName'); + $this->db->from('T_MaterialMaster'); + + $query = $this->db->get(); + + return $query->result(); + } + + + /** + * This function is used to get the Cost center information + * @return array $result : This is result of the query + */ + function getCostCenter() + { + + $this->db->select('CostName, Description'); + $this->db->from('T_CostCentre'); + + $query = $this->db->get(); + + return $query->result(); + } + + + /** + * This function is used to get the Config value from configuration table + * @return array $result : This is result of the query + */ + function getConfigValue($ConfigID ,$ConfigValue = '') + { + + $this->db->select('ConfigValue'); + $this->db->from('T_ConfigDetails'); + $this->db->where('Config_id ',$ConfigID ); + if($ConfigValue != '') + { + $this->db->where('ConfigValue != ',$ConfigValue ); + } + $query = $this->db->get(); + + return $query->result(); + } + + + /** + * This function is used to get the Purchase order Type + * @return array $result : This is result of the query + */ + function getAllEmployees() + { + $this->db->select('EmpID,FirstName,LastName'); + $this->db->from('T_Employee_Details'); + $query = $this->db->get(); + + return $query->result(); + } + + + + /** + * This function is used to add New Purchase order to the system + + */ + function addNewPO($PO_Type,$PO_Date,$Supplier_ID,$Special_Order,$User_ID,$Requester_Email,$Requester_Ph,$Requested_Date,$Budget_Manager, + $Budget_Manager_Department,$Purchasing_Category,$Purchasing_Justification,$Created_By,$BasicValue,$DiscountType,$txtDiscount,$PackagingType, + $txtPackaging,$Exciseduty,$txtVat,$txtFreight,$AfterDiscount,$AfterPackaging,$AferExciseduty,$txtAfterVat,$txtOrderValue) + { + + $result = $this->db-> query("CALL P_PURCHASEORDER_DETAILS('".$PO_Type."',STR_TO_DATE('".$PO_Date."','%m-%d-%Y %H:%i:%s'),'".$Supplier_ID."','".$Special_Order."','".$User_ID."' + ,'".$Requester_Email."','".$Requester_Ph."',STR_TO_DATE('".$Requested_Date."','%m-%d-%Y %H:%i:%s'),'".$Budget_Manager."','".$Budget_Manager_Department."','".$Purchasing_Category."','".$Purchasing_Justification."','".$Created_By."','".$BasicValue."','".$DiscountType."','".$txtDiscount."','".$PackagingType."','".$txtPackaging."','".$Exciseduty."','".$txtVat."','".$txtFreight."','".$AfterDiscount."','".$AfterPackaging."','".$AferExciseduty."','".$txtAfterVat."','".$txtOrderValue."')") or die(mysql_error()); + + // print_r($this->db->last_query()); + + $result ->next_result(); + + if ($result->num_rows > 0) { + //echo $result->num_rows; + return $result->result_array(); + } + + } + + + /** + * This function is used to add new PO Line Item to T_PurchaseOrderLineItem table + * @return number $insert_id : This is last inserted id + */ + + function addNewPOLineItem($PONO,$Material_ID,$UOM,$Quantity,$UnitPrice) + { + //echo 'addNewPOLineItem Model called'; + + $result = $this->db-> query("CALL P_LINEITEM('".$PONO."','".$Material_ID."','".$UOM."',".$Quantity.",".$UnitPrice.")") or die(mysql_error()); + + $result ->next_result(); + + //print_r($this->db->last_query()); + + if ($result->num_rows > 0) + { + //echo 'PO Line item Inserted successfully'; + return $result->result_array(); + } + + return $result ->result_array(); ; + } + + /** + * This function used to get user information by id + * @param number $userId : This is user id + * @return array $result : This is user information + */ + function getPOLineItem($PO = '') + { + $this->db->select('POline.POLineNo as POLineNo,Raw.MaterialName as materialName ,POline.UOM as UOM,POline.Quantity as Quantity,POline.UnitPrice as UnitPrice, (POline.Quantity * POline.UnitPrice) as ProductPrice'); + $this->db->from('T_POLineItem as POline '); + $this->db->join('T_RawMaterialDetailsN as Raw', 'POline.Material_ID = Raw.MaterialCode'); + if(!empty($PO)) { + + $this->db->where('POline.PONO', $PO); + } + else + { + $likeCriteria = "(POline.PONO is null)"; + $this->db->where($likeCriteria); + } + + $query = $this->db->get(); + // print_r($query); + $result = $query->result(); + + return $result; + } + + /** + * This function used to get user information by id + * @param number $userId : This is user id + * @return array $result : This is user information + */ + function getuserInfo($PO) + { + $this->db->select('POType, PODate, SupplierID,SpecialOrder,UserID,RequestedDate,RequesterEmail,RequesterPh, PurchasingCategory,BudgetManager,BudgetManagerDepartment,'); + $this->db->from('T_PurchaseOrderDetails'); + $this->db->where('PONO', $PO); + $query = $this->db->get(); + + return $query->result(); + } + + function getPurchaseOrder($PONO) + { + $this->db->select('PODetail.*,Supplier.SupplierName,Supplier.Address,usr.name as usrName'); + $this->db->from('T_PurchaseOrderDetails AS PODetail'); + $this->db->join('T_SupplierDetailsN as Supplier', 'PODetail.SupplierID = Supplier.SupplierID'); + $this->db->join('tbl_users as usr', 'usr.userId = PODetail.UserID'); + $this->db->where('PODetail.PONO', $PONO); + $query = $this->db->get(); + + $result = $query->result(); + + // print_r($this->db->last_query()); + return $result; + } + + function getLastInsertedPO() + { + $this->db->select('max(PONO) as PO'); + $this->db->from('T_PurchaseOrderDetails'); + $query = $this->db->get(); + + return $query->result_array(); + } + function updatePODetails($PO,$PODetails) + { + $this->db->where('PONO', $PO); + $this->db->update('T_PurchaseOrderDetails', $PODetails); + + return TRUE; + } +} + + \ No newline at end of file