270 lines
9.8 KiB
PHP
270 lines
9.8 KiB
PHP
<?php
|
|
|
|
namespace App\Models;
|
|
|
|
use CodeIgniter\Model;
|
|
|
|
class Assetdetails_model extends Model
|
|
{
|
|
|
|
/**
|
|
* 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 assetListing()
|
|
{
|
|
$builder = $this->db->table('T_Asset_Details asd')
|
|
->select('asd.*,dep.DepartmentName,sup.SupplierName')
|
|
->join('T_DepartmentDetails dep', ' dep.DEPCode = asd.DEPCode', 'left')
|
|
->join('T_SupplierDetailsN sup', 'sup.SupplierID = asd.SupplierCode', 'left');
|
|
|
|
$query = $builder->get();
|
|
|
|
$result = $query->getResult();
|
|
return $result;
|
|
}
|
|
|
|
|
|
function getDepartment($Department = '')
|
|
{
|
|
$builder = $this->db->table('T_DepartmentDetails')
|
|
->select('DEPCode,DepartmentName')
|
|
->where('IsActive', 1);
|
|
if ($Department != '') {
|
|
$builder->where('DEPCode !=', $Department);
|
|
}
|
|
$query = $builder->get();
|
|
|
|
return $query->getResult();
|
|
}
|
|
|
|
function getSupplierName($SupplierID = '')
|
|
{
|
|
$builder = $this->db->table('T_SupplierDetailsN')
|
|
->select('SupplierID, SupplierName')
|
|
->where('IsActive', 1);
|
|
if ($SupplierID != '') {
|
|
$builder->where('SupplierID !=', $SupplierID);
|
|
}
|
|
$query = $builder->get();
|
|
|
|
return $query->getResult();
|
|
}
|
|
function getpodetails($PO)
|
|
{
|
|
|
|
$builder = $this->db->table('T_PurchaseOrder_Master POM')
|
|
->distinct()
|
|
->select('POM.PONO,POM.SupplierID,POL.MaterialCode,DeliveryDate,PODate,sup.SupplierName,POL.LineItemNo')
|
|
->join('T_PurchaseOrder_LineItem POL', 'POL.PONO = POM.PONO')
|
|
->join('T_SupplierDetailsN sup', 'sup.SupplierID = POM.SupplierID')
|
|
->where('POM.status', MRIR_APPROVED);
|
|
if (!empty($PO)) {
|
|
$builder->where('POM.PONO', $PO);
|
|
}
|
|
$query = $builder->get();
|
|
|
|
return $query->getResult();
|
|
}
|
|
function getPO($PO = '')
|
|
{
|
|
$builder = $this->db->table('T_PurchaseOrder_Master POM')
|
|
->distinct()
|
|
->select(' POM.PONO'); //,DeliveryDate,PODate,sup.SupplierName,POM.SupplierID');
|
|
//->join ('T_PurchaseOrder_LineItem POL ',' POL.PONO = POM.PONO');
|
|
//->join ('T_SupplierDetailsN sup ',' sup.SupplierID = POM.SupplierID');
|
|
$builder->where('POM.status', MRIR_APPROVED);
|
|
if (!empty($PO)) {
|
|
$builder->where('POM.PONO', $PO);
|
|
}
|
|
$query = $builder->get();
|
|
|
|
return $query->getResult();
|
|
}
|
|
function getlineitemre($line)
|
|
{
|
|
$builder = $this->db->table('T_PurchaseOrder_LineItem POL')
|
|
->select('POL.LineItemNo,POL.MaterialCode,MM.MaterialName,MM.UOM,POL.Quantity,POM.POType,re.TotalValue,req.ReqNo,emp.firstname,emp.Departmentcode,dep.DepartmentName,sup.SupplierName,date(POM.DeliveryDate) as DeliveryDate,POM.PODate,POM.SupplierID')
|
|
->join('T_Requestion_Master req', 'req.ReqNo = POL.ReqNo', 'left')
|
|
->join('T_PurchaseOrder_Master POM', 'POM.PONO=POL.PONO', 'left')
|
|
->join('T_MaterialMaster MM', 'MM.MaterialCode = POL.MaterialCode', 'left')
|
|
->join('T_Employee_Details emp', 'emp.EmpID = req.Requestedby', 'left')
|
|
->join('T_DepartmentDetails dep', 'dep.DEPCode = emp.Departmentcode', 'left')
|
|
->join('T_Revenue_Tax re', 're.LineItemNo = POL.LineItemNo', 'left')
|
|
->join('T_SupplierDetailsN sup', 'sup.SupplierID = POM.SupplierID', 'left')
|
|
->where('POL.LineItemNo', $line);
|
|
|
|
$query = $builder->get();
|
|
|
|
$result = $query->getResult();
|
|
return $result;
|
|
}
|
|
|
|
function getlineitemser($line)
|
|
{
|
|
$builder = $this->db->table('T_PurchaseOrder_LineItem POL')
|
|
->select('POL.LineItemNo,POL.MaterialCode,MM.MaterialName,MM.UOM,POM.POType,POL.Quantity,ser.TotalValue,req.ReqNo,emp.firstname,dep.DepartmentName,emp.Departmentcode,sup.SupplierName,date(POM.DeliveryDate) as DeliveryDate,POM.PODate,POM.SupplierID')
|
|
->join('T_Requestion_Master req', 'req.ReqNo = POL.ReqNo', 'left')
|
|
->join('T_PurchaseOrder_Master POM', 'POM.PONO=POL.PONO', 'left')
|
|
->join('T_MaterialMaster MM', 'MM.MaterialCode = POL.MaterialCode', 'left')
|
|
->join('T_Employee_Details emp', 'emp.EmpID = req.Requestedby', 'left')
|
|
->join('T_DepartmentDetails dep', 'dep.DEPCode = emp.Departmentcode', 'left')
|
|
->join('T_Service_Tax ser', 'ser.LineItemNo = POL.LineItemNo', 'left')
|
|
->join('T_SupplierDetailsN sup', 'sup.SupplierID = POM.SupplierID', 'left')
|
|
->where('POL.LineItemNo', $line);
|
|
|
|
$query = $builder->get();
|
|
|
|
$result = $query->getResult();
|
|
return $result;
|
|
}
|
|
function getlineitemimport($line)
|
|
{
|
|
$builder = $this->db->table('T_PurchaseOrder_LineItem POL')
|
|
->select('POL.LineItemNo,POL.MaterialCode,MM.MaterialName,MM.UOM,POM.POType,POL.Quantity,ser.TotalValue,req.ReqNo,emp.firstname,dep.DepartmentName,emp.Departmentcode,sup.SupplierName,date(POM.DeliveryDate) as DeliveryDate,POM.PODate,POM.SupplierID')
|
|
->join('T_Requestion_Master req', 'req.ReqNo = POL.ReqNo', 'left')
|
|
->join('T_PurchaseOrder_Master POM', 'POM.PONO=POL.PONO', 'left')
|
|
->join('T_MaterialMaster MM', 'MM.MaterialCode = POL.MaterialCode', 'left')
|
|
->join('T_Employee_Details emp', 'emp.EmpID = req.Requestedby', 'left')
|
|
->join('T_DepartmentDetails dep', 'dep.DEPCode = emp.Departmentcode', 'left')
|
|
->join('T_Import_Tax ser', 'ser.LineItemNo = POL.LineItemNo', 'left')
|
|
->join('T_SupplierDetailsN sup', 'sup.SupplierID = POM.SupplierID', 'left')
|
|
->where('POL.LineItemNo', $line);
|
|
|
|
$query = $builder->get();
|
|
|
|
$result = $query->getResult();
|
|
return $result;
|
|
}
|
|
|
|
function getlineitemcap($line)
|
|
{
|
|
$builder = $this->db->table('T_PurchaseOrder_LineItem POL')
|
|
->select('POL.LineItemNo,POL.MaterialCode,MM.MaterialName,MM.UOM,POM.POType,POL.Quantity,sum(ser.TotalValue+imp.TotalValue) as TotalValue,req.ReqNo,emp.firstname,dep.DepartmentName,emp.Departmentcode,sup.SupplierName,date(POM.DeliveryDate) as DeliveryDate,POM.PODate,POM.SupplierID')
|
|
->join('T_Requestion_Master req', 'req.ReqNo = POL.ReqNo', 'left')
|
|
->join('T_PurchaseOrder_Master POM', 'POM.PONO=POL.PONO', 'left')
|
|
->join('T_MaterialMaster MM', 'MM.MaterialCode = POL.MaterialCode', 'left')
|
|
->join('T_Employee_Details emp', 'emp.EmpID = req.Requestedby', 'left')
|
|
->join('T_DepartmentDetails dep', 'dep.DEPCode = emp.Departmentcode', 'left')
|
|
->join('T_Import_Tax imp', 'imp.LineItemNo = POL.LineItemNo', 'left')
|
|
->join('T_Service_Tax ser', 'ser.LineItemNo = POL.LineItemNo', 'left')
|
|
->join('T_SupplierDetailsN sup', 'sup.SupplierID = POM.SupplierID', 'left')
|
|
->where('POL.LineItemNo', $line);
|
|
|
|
$query = $builder->get();
|
|
|
|
$result = $query->getResult();
|
|
return $result;
|
|
}
|
|
function gettyp($type)
|
|
{
|
|
$builder = $this->db->table('T_PurchaseOrder_LineItem POL')
|
|
->select('POM.POType,POL.LineItemNo')
|
|
->join('T_PurchaseOrder_Master POM', 'POM.PONO=POL.PONO')
|
|
->where('POL.LineItemNo', $type);
|
|
$query = $builder->get();
|
|
|
|
$result = $query->getResult();
|
|
return $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 = '')
|
|
{
|
|
$builder = $this->db->table('T_ConfigDetails')
|
|
->select('ConfigValue')
|
|
->where('Config_id ', $ConfigID);
|
|
if ($ConfigValue != '') {
|
|
$builder->where('ConfigValue != ', $ConfigValue);
|
|
}
|
|
$query = $builder->get();
|
|
|
|
return $query->getResult();
|
|
}
|
|
|
|
/**
|
|
* This function used to get user information by id
|
|
* @param number $userId : This is user id
|
|
* @return array $result : This is user information
|
|
*/
|
|
|
|
function addNewasset($asset)
|
|
{
|
|
|
|
$this->db->transBegin();
|
|
|
|
$this->db->table('T_Asset_Details')->insert($asset);
|
|
|
|
$affectedRows = $this->db->affectedRows();
|
|
|
|
if ($this->db->transStatus() === false) {
|
|
$this->db->transRollback();
|
|
return false;
|
|
} else {
|
|
$this->db->transCommit();
|
|
return $affectedRows;
|
|
}
|
|
}
|
|
|
|
/**
|
|
* This function used to get Asset details by Asset Code
|
|
* @param number $Asset_Code : This is AssetCode
|
|
* @return array $result : This is Asset information
|
|
*/
|
|
function getAssetDetails($Asset_Code)
|
|
{
|
|
$builder = $this->db->table('T_Asset_Details Asset')
|
|
//echo $Asset_Code;
|
|
->select('Asset.*,POM.DeliveryDate,Dep.DepartmentName as DepartmentName,MM.MaterialName,MM.UOM,Supp.SupplierName as SupplierName')
|
|
->join('T_DepartmentDetails Dep', 'Asset.DEPCode = Dep.DEPCode', 'left')
|
|
->join('T_SupplierDetailsN Supp', 'Asset.SupplierCode = Supp.SupplierID', 'left')
|
|
->join('T_MaterialMaster MM ', 'MM.MaterialCode = Asset.MaterialCode', 'left')
|
|
->join('T_PurchaseOrder_Master POM', 'POM.PONO = Asset.PONO', 'left')
|
|
->where('Asset.AssetCode', $Asset_Code);
|
|
|
|
|
|
$query = $builder->get();
|
|
|
|
return $query->getResult();
|
|
}
|
|
function editasset($asset, $Asset_Code)
|
|
{
|
|
$this->db->table('T_Asset_Details')
|
|
->where('AssetCode', $Asset_Code)
|
|
->update($asset);
|
|
$count = $this->db->affectedRows();
|
|
return $count;
|
|
}
|
|
|
|
|
|
function viewasset($asset, $Asset_Code)
|
|
{
|
|
|
|
$this->db->table('T_Asset_Details')
|
|
->where('AssetCode', $Asset_Code)
|
|
->update($asset);
|
|
$count = $this->db->affectedRows();
|
|
return $count;
|
|
}
|
|
function export_excel()
|
|
{
|
|
$builder = $this->db->table('T_Asset_Details as det')
|
|
->select('det.AssetCode,det.AssetName,det.Description,dep.DepartmentName as DEPCode,det.Location,det.PONO,det.POLineItem,MM.MaterialName,det.Quantity,det.UserName,sup.SupplierName,det.DateOfPurchase,det.DateOfCommison,det.AssetValue,det.AssetStatus,det.IsActive,det.Remarks,emp.firstname,emp1.firstname as Updated_By')
|
|
->join('tbl_users as tbl', ' det.createdby = tbl.userid', 'left')
|
|
->join('T_DepartmentDetails as dep', 'dep.DEPCode=det.DEPCode', 'left')
|
|
->join('T_Employee_Details as emp', 'emp.empid=tbl.empid', 'left')
|
|
->join('T_SupplierDetailsN as sup', 'sup.SupplierID=det.SupplierCode', 'left')
|
|
->join('T_MaterialMaster MM ', 'MM.MaterialCode = det.MaterialCode', 'left')
|
|
->join('tbl_users as tbl1', ' det.UpdatedBy = tbl1.userid', 'left')
|
|
->join('T_Employee_Details as emp1', 'emp1.empid=tbl1.empid', 'left');
|
|
$query = $builder->get();
|
|
|
|
return $query->getResult();
|
|
}
|
|
}
|