public HttpResponseMessage SearchMovementRequest(HttpRequestMessage request, [FromBody] MovementRequestViewModel obj) { var result = service.SearchMovementRequest(obj); HttpResponseMessage response = new HttpResponseMessage(); response = request.CreateResponse(HttpStatusCode.OK, new { success = true, obj = result }); return(response); }
public List <MovementRequestViewModel> GetMovementRequestCompleted() { List <MovementRequestViewModel> result = new List <MovementRequestViewModel>(); var movement = _movementrequest.GetMovementRequestToMove(); List <MovementRequestSearchResult> movementrequestlist = new List <MovementRequestSearchResult>(); foreach (var item in movement) { MovementRequestViewModel model = new MovementRequestViewModel(); model.MovementRequest = new MovementRequestSearchResult(); var approvalname = _pref.GetLookupByApprovalStatusCode(item.ApprovalStatus); model.MovementRequest.ID = item.ID; model.MovementRequest.MovementDate = item.MovementDate; model.MovementRequest.Description = item.Description; model.MovementRequest.ApprovedDate = item.ApprovedDate; model.MovementRequest.LocationID = item.LocationID; model.MovementRequest.LocationName = item.Location != null ? item.Location.Name : null; model.MovementRequest.ApprovedBy = item.ApprovedBy; model.MovementRequest.Notes = item.Notes; model.MovementRequest.ApprovalStatus = item.ApprovalStatus; model.MovementRequest.ApprovalStatusName = approvalname != null ? approvalname.Value : null; model.MovementRequestDetail = new List <MovementRequestDetailViewModel>(); movementrequestlist.Add(model.MovementRequest); foreach (var detail in item.MovementRequestDetail) { if (detail.DeletedDate == null) { MovementRequestDetailViewModel mvdetail = new MovementRequestDetailViewModel(); var moveasset = _assetlocation.GetAssetLocationByMovementDetailID(detail.ID); mvdetail.Quantity = detail.Quantity; mvdetail.Transfered = moveasset != null ? moveasset.Count : 0; if (mvdetail.Quantity == mvdetail.Transfered) { var categoryname = _pref.GetLookupByCategoryCode(detail.AssetCategoryCD); var department = _department.GetDepartmentByID(detail.RequestedTo); mvdetail.ID = detail.ID; mvdetail.MovementRequestID = detail.MovementRequestID; mvdetail.Description = detail.Description; mvdetail.AssetCategoryCD = detail.AssetCategoryCD; mvdetail.CategoryCDName = categoryname != null ? categoryname.Value : null; mvdetail.RequestTo = detail.RequestedTo; mvdetail.RequestToName = department != null ? department.Name : null; model.MovementRequestDetail.Add(mvdetail); } } } if (model.MovementRequestDetail.Count != 0) { result.Add(model); } } return(result); }
public List <MovementRequestViewModel> SearchMovementRequest(MovementRequestViewModel obj) { List <MovementRequestViewModel> result = new List <MovementRequestViewModel>(); if (obj != null) { result = _movementrequest.SearchMovementRequests_SP(Convert.ToInt16(obj.MovementRequest.LocationID), Convert.ToInt16(obj.MovementRequest.ApprovalStatus), obj.Skip); } return(result); }
public HttpResponseMessage CreateMovementRequest(HttpRequestMessage request, [FromBody] MovementRequestViewModel obj) { obj.CreatedDate = _dateExtension.GetDateTime(); var result = service.CreateMovementRequest(obj); HttpResponseMessage response = new HttpResponseMessage(); response = request.CreateResponse(HttpStatusCode.OK, new { success = result.status, obj = result.movementRequest }); return(response); }
public void ConstructorWithInsertRequestShouldEnableSendInsertSucceededCommand() { var request = new MovementRequest { Task = AutomationTasks.Insert }; var viewModel = new MovementRequestViewModel(request); viewModel.SendInsertSucceededCommand.CanExecute().Should().BeTrue(); }
private static void CheckExecutesShouldBeFalse(MovementRequestViewModel viewModel) { viewModel.SendWrongSourceTargetCommand.CanExecute().Should().BeFalse(); viewModel.SendInsertSucceededCommand.CanExecute().Should().BeFalse(); viewModel.SendTransportSucceededCommand.CanExecute().Should().BeFalse(); viewModel.SendWrongPartCountCommand.CanExecute().Should().BeFalse(); viewModel.SendCountZeroCommand.CanExecute().Should().BeFalse(); viewModel.SendOrderExistCommand.CanExecute().Should().BeFalse(); viewModel.SendStoreOccupiedCommand.CanExecute().Should().BeFalse(); }
private void CommandRaised(MovementRequestViewModel viewModel) { viewModel.SendStoragePointOccupiedCommand.CanExecuteChanged += (sender, args) => _storagePointOccupiedCalled = true; viewModel.SendInsertSucceededCommand.CanExecuteChanged += (sender, args) => _insertCalled = true; viewModel.SendTransportSucceededCommand.CanExecuteChanged += (sender, args) => _transportCalled = true; viewModel.SendWrongPartCountCommand.CanExecuteChanged += (sender, args) => _wrongPartNumberCalled = true; viewModel.SendWrongSourceTargetCommand.CanExecuteChanged += (sender, args) => _wrongSourceTargetCalled = true; viewModel.SendCountZeroCommand.CanExecuteChanged += (sender, args) => _countZeroCalled = true; viewModel.SendOrderExistCommand.CanExecuteChanged += (sender, args) => _orderExistCalled = true; viewModel.SendStoreOccupiedCommand.CanExecuteChanged += (sender, args) => _storeOccupiedCalled = true; }
public void ConstructorWithTransportRequestShouldEnableTransportCommands() { var request = new MovementRequest { Task = AutomationTasks.Transport }; var viewModel = new MovementRequestViewModel(request); viewModel.SendTransportSucceededCommand.CanExecute().Should().BeTrue(); viewModel.SendWrongPartCountCommand.CanExecute().Should().BeTrue(); }
public void ConstructorWithDeleteRequestShouldSetTypeToDelete() { var expectedType = $"Delete"; var request = new MovementRequest { Task = AutomationTasks.Delete }; var viewModel = new MovementRequestViewModel(request); viewModel.Type.Should().Be(expectedType); }
public ResultViewModel CreateMovementRequest(MovementRequestViewModel obj) { ResultViewModel result = new ResultViewModel(); IDbContextTransaction transaction = _context.Database.BeginTransaction(); if (obj != null) { try { MovementRequest movement = new MovementRequest(); movement.MovementDate = obj.MovementRequest.MovementDate.Replace("/", string.Empty); movement.Description = obj.MovementRequest.Description; movement.LocationID = obj.MovementRequest.LocationID; movement.ApprovalStatus = Convert.ToInt16(obj.MovementRequest.ApprovalStatus); movement.CreatedDate = obj.CreatedDate;//DateTime.Now; movement.CreatedBy = obj.CreatedBy; movement.Notes = obj.MovementRequest.Notes; foreach (var item in obj.MovementRequestDetail) { MovementRequestDetail detail = new MovementRequestDetail(); detail.Description = item.Description; detail.AssetCategoryCD = item.AssetCategoryCD; detail.Quantity = item.Quantity; detail.RequestedTo = item.RequestTo; detail.CreatedDate = movement.CreatedDate; detail.CreatedBy = movement.CreatedBy; movement.MovementRequestDetail.Add(detail); } _context.MovementRequest.Add(movement); _context.SaveChanges(); transaction.Commit(); result.status = true; result.movementRequest = GetMovementRequestByID(movement.ID); } catch (Exception ex) { transaction.Rollback(); result.status = false; result.movementRequest = null; } } else { result.status = false; result.movementRequest = null; } return(result); }
public List <MovementRequestViewModel> GetMovementRequestNeedApproval() { List <MovementRequestViewModel> result = new List <MovementRequestViewModel>(); var movement = _movementrequest.GetMovementRequestNeedApproval(); foreach (var item in movement) { MovementRequestViewModel model = new MovementRequestViewModel(); var approvalname = _pref.GetLookupByApprovalStatusCode(item.ApprovalStatus); model.ID = item.ID; model.MovementDate = item.MovementDate; model.Description = item.Description; model.ApprovedDate = item.ApprovedDate; model.LocationID = item.LocationID; model.LocationName = item.Location != null ? item.Location.Name : null; model.ApprovedBy = item.ApprovedBy; model.Notes = item.Notes; model.ApprovalStatus = item.ApprovalStatus; model.ApprovalStatusName = approvalname != null ? approvalname.Value : null; model.MovementRequestDetail = new List <MovementRequestDetailViewModel>(); foreach (var item2 in item.MovementRequestDetail) { if (item2.DeletedBy == null && item2.DeletedDate == null) { MovementRequestDetailViewModel detail = new MovementRequestDetailViewModel(); var categoryname = _pref.GetLookupByCategoryCode(item2.AssetCategoryCD); var deparment = _department.GetDepartmentByID(item2.RequestedTo); var moveasset = _assetlocation.GetAssetLocationByMovementDetailID(item2.ID); detail.ID = item2.ID; detail.MovementRequestID = item2.MovementRequestID; detail.Description = item2.Description; detail.AssetCategoryCD = item2.AssetCategoryCD; detail.CategoryCDName = categoryname != null ? categoryname.Value : null; detail.RequestTo = item2.RequestedTo; detail.RequestToName = deparment != null ? deparment.Name : null; detail.Quantity = item2.Quantity; detail.Transfered = moveasset != null ? moveasset.Count : 0; model.MovementRequestDetail.Add(detail); } } result.Add(model); } return(result); }
public MovementRequestViewModel GetMovementRequestToMoveByID(int id) { var movement = _movementrequest.GetMovementRequestByID(id); MovementRequestViewModel result = new MovementRequestViewModel(); result.MovementRequest = new MovementRequestSearchResult(); var approvalname = _pref.GetLookupByApprovalStatusCode(movement.ApprovalStatus); result.MovementRequest.ID = movement.ID; result.MovementRequest.MovementDate = movement.MovementDate; result.MovementRequest.LocationID = movement.LocationID; result.MovementRequest.LocationName = movement.Location != null ? movement.Location.Name : null; result.MovementRequest.Description = movement.Description; result.MovementRequest.ApprovedDate = movement.ApprovedDate; result.MovementRequest.ApprovedBy = movement.ApprovedBy; result.MovementRequest.Notes = movement.Notes; result.MovementRequest.ApprovalStatus = movement.ApprovalStatus; result.MovementRequest.ApprovalStatusName = approvalname != null ? approvalname.Value : null; result.MovementRequestDetail = new List <MovementRequestDetailViewModel>(); foreach (var item in movement.MovementRequestDetail) { if (item.DeletedDate == null && item.DeletedBy == null) { MovementRequestDetailViewModel detail = new MovementRequestDetailViewModel(); var categoryname = _pref.GetLookupByCategoryCode(item.AssetCategoryCD); var deparment = _department.GetDepartmentByID(item.RequestedTo); var moveasset = _assetlocation.GetAssetLocationByMovementDetailID(item.ID); detail.Quantity = item.Quantity; detail.Transfered = moveasset != null ? moveasset.Count : 0; if (detail.Quantity != detail.Transfered) { detail.ID = item.ID; detail.MovementRequestID = item.MovementRequestID; detail.Description = item.Description; detail.AssetCategoryCD = item.AssetCategoryCD; detail.CategoryCDName = categoryname != null ? categoryname.Value : null; detail.RequestTo = item.RequestedTo; detail.RequestToName = deparment != null ? deparment.Name : null; result.MovementRequestDetail.Add(detail); } } } return(result); }
public void ConstructorWithTwoBarcodesRequestShouldSetBarcode() { var data1 = new MovementData { Barcode = "barcode1", Index = "1" }; var data2 = new MovementData { Barcode = "barcode2", Index = "2" }; var request = new MovementRequest(); request.Data.Add(data1); request.Data.Add(data2); var viewModel = new MovementRequestViewModel(request); viewModel.Barcode.Should().Be("barcode1 barcode2"); }
public void ConstructorWithInsertRequestShouldSetTypeToInsert() { var expectedType = $"Insert"; var request = new MovementRequest { Task = AutomationTasks.Insert }; var viewModel = new MovementRequestViewModel(request); viewModel.Type.Should().Be(expectedType); viewModel.SendTransportSucceededCommand.CanExecute().Should().BeFalse(); viewModel.SendWrongSourceTargetCommand.CanExecute().Should().BeTrue(); viewModel.SendWrongPartCountCommand.CanExecute().Should().BeFalse(); viewModel.SendStoragePointOccupiedCommand.CanExecute().Should().BeTrue(); viewModel.SendInsertSucceededCommand.CanExecute().Should().BeTrue(); viewModel.SendCountZeroCommand.CanExecute().Should().BeTrue(); }
public List <MovementRequestViewModel> SearchMovementRequests_SP(int LocationID, int ApprovalStatus, int Skip) { var result = new List <MovementRequestViewModel>(); var obj = new MovementRequestViewModel(); using (AstonContext dbContext = new AstonContext()) { dbContext.Database.OpenConnection(); DbCommand cmd = dbContext.Database.GetDbConnection().CreateCommand(); cmd.CommandText = "dbo.sp_SearchMovementRequest"; cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.Add(new SqlParameter("@LocationID", SqlDbType.Int) { Value = LocationID }); cmd.Parameters.Add(new SqlParameter("@ApprovalStatus", SqlDbType.Int) { Value = ApprovalStatus }); cmd.Parameters.Add(new SqlParameter("@Skip", SqlDbType.Int) { Value = Skip }); using (var reader = cmd.ExecuteReader()) { //a = reader.<AssetViewModel>(): var assetlist = dbContext.DataReaderMapToList <MovementRequestSearchResult>(reader); foreach (var asset in assetlist) { result.Add(new MovementRequestViewModel() { MovementRequest = asset }); } cmd.Connection.Close(); } } return(result); }
public void ConstructorShouldSetProperties() { var expectedData = new MovementData(); expectedData.Barcode = "expected Barcode"; expectedData.Index = "1"; var expectedSource = "expected source"; var expectedInfo = "expected info"; var expectedTargetShelf = "expected target shelf"; var expectedTarget = "expected target"; var expectedSourceShelf = "expected source shelf"; var expectedQuantity = 2; var expectedType = $"Transport"; var expectedTicket = Guid.NewGuid(); var request = new MovementRequest { Info = expectedInfo, Quantity = expectedQuantity, Source = expectedSource, SourceCompartment = expectedSourceShelf, Target = expectedTarget, TargetCompartment = expectedTargetShelf, Task = AutomationTasks.Transport, Ticket = expectedTicket, Timestamp = DateTime.UtcNow }; request.Data.Add(expectedData); var viewModel = new MovementRequestViewModel(request); viewModel.Name.Should().Be(expectedInfo); viewModel.Source.Should().Be(expectedSource); viewModel.SourceShelf.Should().Be(expectedSourceShelf); viewModel.Target.Should().Be(expectedTarget); viewModel.TargetShelf.Should().Be(expectedTargetShelf); viewModel.Quantity.Should().Be(expectedQuantity); viewModel.Timestamp.Should().BeBefore(DateTime.Now); viewModel.Ticket.Should().Be(expectedTicket); viewModel.Type.Should().Be(expectedType); viewModel.Barcode.Should().Be(expectedData.Barcode); viewModel.ToString().Should().Be(viewModel.Name); viewModel.SendTransportSucceededCommand.CanExecute().Should().BeTrue(); viewModel.SendWrongPartCountCommand.CanExecute().Should().BeTrue(); viewModel.SendInsertSucceededCommand.CanExecute().Should().BeFalse(); viewModel.SendWrongSourceTargetCommand.CanExecute().Should().BeTrue(); viewModel.SendStoragePointOccupiedCommand.CanExecute().Should().BeFalse(); viewModel.SendCountZeroCommand.CanExecute().Should().BeTrue(); }
public HttpResponseMessage SearchMovementRequest(HttpRequestMessage request, [FromBody] MovementRequestViewModel obj) { HttpResponseMessage response = new HttpResponseMessage(); response = _movementProcess.SearchMovementRequest(obj); return response; }
public ResultViewModel UpdateMovementRequest(MovementRequestViewModel obj) { ResultViewModel result = new ResultViewModel(); IDbContextTransaction transaction = _context.Database.BeginTransaction(); try { var movement = _movementrequest.GetMovementRequestByID(obj.MovementRequest.ID); movement.Description = obj.MovementRequest.Description; movement.LocationID = obj.MovementRequest.LocationID; movement.MovementDate = obj.MovementRequest.MovementDate.Replace("/", string.Empty); movement.ApprovalStatus = Convert.ToInt16(obj.MovementRequest.ApprovalStatus); movement.UpdatedBy = obj.UpdatedBy; movement.UpdatedDate = obj.UpdatedDate;//DateTime.Now; movement.Notes = obj.MovementRequest.Notes; foreach (var item in movement.MovementRequestDetail) { var data = obj.MovementRequestDetail.Where(p => p.ID == item.ID).FirstOrDefault(); if (data != null) { if (data.IsUpdate == true) { item.Description = data.Description; item.AssetCategoryCD = data.AssetCategoryCD; item.Quantity = data.Quantity; item.RequestedTo = data.RequestTo; item.UpdatedBy = obj.UpdatedBy; item.UpdatedDate = obj.UpdatedDate;//DateTime.Now; } else if (data.IsDelete == true) { item.DeletedDate = obj.DeletedDate;//DateTime.Now; item.DeletedBy = obj.UpdatedBy; } obj.MovementRequestDetail.Remove(data); } } foreach (var item in obj.MovementRequestDetail) { MovementRequestDetail detail = new MovementRequestDetail(); detail.Description = item.Description; detail.AssetCategoryCD = item.AssetCategoryCD; detail.Quantity = item.Quantity; detail.RequestedTo = item.RequestTo; detail.CreatedBy = obj.UpdatedBy; detail.CreatedDate = obj.CreatedDate;//DateTime.Now; movement.MovementRequestDetail.Add(detail); } _context.Entry(movement).State = EntityState.Modified; _context.SaveChanges(); transaction.Commit(); result.movementRequest = GetMovementRequestByID(movement.ID); result.status = true; } catch (Exception ex) { transaction.Rollback(); result.movementRequest = null; result.status = false; } return(result); }
public List <MovementRequestViewModel> SearchMovementRequests_SP(int LocationID, int ApprovalStatus, int Skip) { var result = new List <MovementRequestViewModel>(); var obj = new MovementRequestViewModel(); using (NpgsqlConnection connection = new NpgsqlConnection(ConfigureSetting.GetConnectionString)) { connection.Open(); string sql = "sp_searchmovementrequest"; using (NpgsqlCommand command = new NpgsqlCommand(sql, connection)) { command.CommandType = System.Data.CommandType.StoredProcedure; if (LocationID == null) { command.Parameters.AddWithValue("@p_locationid", NpgsqlTypes.NpgsqlDbType.Integer, DBNull.Value); } else { command.Parameters.AddWithValue("@p_locationid", NpgsqlTypes.NpgsqlDbType.Integer, LocationID); } if (ApprovalStatus == null) { command.Parameters.AddWithValue("@p_approvalstatus", NpgsqlTypes.NpgsqlDbType.Integer, DBNull.Value); } else { command.Parameters.AddWithValue("@p_approvalstatus", NpgsqlTypes.NpgsqlDbType.Integer, ApprovalStatus); } command.Parameters.AddWithValue("@skip", NpgsqlTypes.NpgsqlDbType.Integer, Skip); using (var reader = command.ExecuteReader()) { while (reader.Read()) { result.Add(new MovementRequestViewModel { MovementRequest = new MovementRequestSearchResult { ID = Convert.ToInt32(reader[0]), MovementDate = reader[1].ToString(), Description = reader[2].ToString(), ApprovedDate = reader[3].ToString(), ApprovedBy = reader[4].ToString(), ApprovalStatus = Convert.ToInt32(reader[5]), Notes = reader[6].ToString(), LocationID = Convert.ToInt32(reader[7]), LocationName = reader[8].ToString(), ApprovalStatusName = reader[9].ToString(), TotalRow = Convert.ToInt32(reader[10]) } }); } } } connection.Close(); } return(result); }