public List <AssetDetails> GetAssetDetailsByEmpcode(string id) { List <AssetDetails> assetCsoList = new List <AssetDetails>(); List <Requests> requestClear = _repo.GetAllCsoRequest(); //getting assets of a particular employee foreach (Requests req in requestClear) { List <Assets> assets = _assetRepo.GetAssetsByCso(req.EmployeeCode); foreach (Assets req1 in assets) { AssetDetails asset = _assetDb.GetAssetByCode(req1.AssetCode); //repo call //setting the details to the view model AssetDetails model = new AssetDetails(); model.AssetId = req1.AssetId; model.AssetCode = req1.AssetCode; model.AssetStatus = req1.AssetStatus; model.ReAssignedTo = req1.ReassignedTo; model.CompanyCode = asset.CompanyCode; model.CapitalisationDate = asset.CapitalisationDate; model.Location = asset.Location; model.Description = asset.Description; assetCsoList.Add(model); //adding to the list to be returned } } return(assetCsoList); }
//Method to get all the discrepant asset records based on the data from the final report generated //and the updated data from the SAP public List <AssetControllerDiscrepancyReport> GetDiscrepantRecords() { List <AssetControllerDiscrepancyReport> discrepancyList = new List <AssetControllerDiscrepancyReport>(); //Repository method to get all the cleared request List <Requests> requestList = _requestrepo.GetAllClearedRequest(); foreach (var req in requestList) { //time difference between the request completion and current date is being checked here DateTime date = DateTime.Today; TimeSpan difference = date.Date - req.DateOfCompletionRequest.Date; if (difference.Days >= 1) { //Repository method to get all the asset associated to a employee List <Assets> assetList = _assetrepo.GetAssetByEmpCode(req.EmployeeCode); foreach (var asset in assetList) { //A call to the niit database is being triggered to get a single asset details AssetDetails assetSAP = _assetDb.GetAssetByCode(asset.AssetCode); string[] empId = asset.ReassignedTo.Split(':'); if (assetSAP.EmployeeCode != empId[0]) { EmployeeDetails emp = _empDb.GetName(empId[0]); EmployeeDetails emp2 = _empDb.GetName(assetSAP.EmployeeCode); //if discrepancy exists then values are being assigned to the view model AssetControllerDiscrepancyReport report = new AssetControllerDiscrepancyReport(); report.RequestId = req.RequestId; report.AssetCode = asset.AssetCode; report.RepEmployeeCode = asset.ReassignedTo; report.RepEmployeeName = emp.EmployeeName; report.SapEmployeeCode = assetSAP.EmployeeCode; report.SapEmployeeName = emp2.EmployeeName; discrepancyList.Add(report); //discrepant record are being added to the list to be returned } } } } return(discrepancyList); }