public async Task <ApiResponse> Handle(AddStoreSourceCodeCommand request, CancellationToken cancellationToken) { ApiResponse response = new ApiResponse(); try { StoreSourceCodeDetail storeSourceCodeDetail = _dbContext.StoreSourceCodeDetail.FirstOrDefault(x => x.IsDeleted == false && x.Code == request.Code); if (storeSourceCodeDetail != null) { throw new Exception("Code already present. Please try again!!"); } StoreSourceCodeDetail obj = _mapper.Map <StoreSourceCodeDetail>(request); obj.IsDeleted = false; obj.CreatedDate = request.CreatedDate; obj.CreatedById = request.CreatedById; await _dbContext.StoreSourceCodeDetail.AddAsync(obj); await _dbContext.SaveChangesAsync(); response.StatusCode = StaticResource.successStatusCode; response.Message = "Success"; } catch (Exception ex) { response.StatusCode = StaticResource.failStatusCode; response.Message = ex.Message; } return(response); }
public async Task <ApiResponse> Handle(DeleteStoreSourceCodeCommand request, CancellationToken cancellationToken) { ApiResponse response = new ApiResponse(); try { //Returning the storeSourceCodeDetail record based on storeSourceCodeId received StoreSourceCodeDetail storeSourceCodeDetail = _dbContext.StoreSourceCodeDetail.FirstOrDefault(x => x.SourceCodeId == request.storeSourceCodeId && x.IsDeleted == false); //Deleting record storeSourceCodeDetail.IsDeleted = true; storeSourceCodeDetail.ModifiedDate = request.ModifiedDate; storeSourceCodeDetail.ModifiedById = request.ModifiedById; //updating to db await _dbContext.SaveChangesAsync(); response.StatusCode = StaticResource.successStatusCode; response.Message = "Success"; } catch (Exception ex) { response.StatusCode = StaticResource.failStatusCode; response.Message = StaticResource.SomethingWrong + ex.Message; } return(response); }
public async Task <ApiResponse> Handle(EditStoreSourceCodeCommand request, CancellationToken cancellationToken) { ApiResponse response = new ApiResponse(); try { //Retrieving the Old storeSourceCode record from db StoreSourceCodeDetail storeSourceCodeDetail = await _dbContext.StoreSourceCodeDetail.FirstOrDefaultAsync(x => x.IsDeleted == false && x.SourceCodeId == request.SourceCodeId); //Mapping new values in old storeSourceCode record storeSourceCodeDetail.Address = request.Address; storeSourceCodeDetail.Code = request.Code; storeSourceCodeDetail.CodeTypeId = request.CodeTypeId; storeSourceCodeDetail.Description = request.Description; storeSourceCodeDetail.EmailAddress = request.EmailAddress; storeSourceCodeDetail.Fax = request.Fax; storeSourceCodeDetail.Guarantor = request.Guarantor; storeSourceCodeDetail.Phone = request.Phone; storeSourceCodeDetail.IsDeleted = false; storeSourceCodeDetail.ModifiedDate = request.ModifiedDate; storeSourceCodeDetail.ModifiedById = request.ModifiedById; //saving newly mapped object await _dbContext.SaveChangesAsync(); response.StatusCode = StaticResource.successStatusCode; response.Message = "Success"; } catch (Exception ex) { response.StatusCode = StaticResource.failStatusCode; response.Message = StaticResource.SomethingWrong + ex.Message; } return(response); }
public async Task <ApiResponse> Handle(GetStoreTypeCodeQuery request, CancellationToken cancellationToken) { ApiResponse response = new ApiResponse(); try { string storeCode = string.Empty; int codeNumber = 0; //Getting latest created record of StoreSourceCodeDetail based on source code type selected StoreSourceCodeDetail storeSourceCodeDetail = await _dbContext.StoreSourceCodeDetail.OrderByDescending(x => x.SourceCodeId).FirstOrDefaultAsync(x => x.IsDeleted == false && x.CodeTypeId == request.CodeTypeId); if (storeSourceCodeDetail != null) { //retreiving the number in code if (int.TryParse(storeSourceCodeDetail.Code.Substring(1), out codeNumber)) { //generating a new code for new entry in StoreSourceCodeDetail table based on source code type selected switch (request.CodeTypeId) { case (int)SourceCode.Organizations: storeCode = "O" + String.Format("{0:D5}", ++codeNumber); break; case (int)SourceCode.Suppliers: storeCode = "S" + String.Format("{0:D5}", ++codeNumber); break; case (int)SourceCode.RepairShops: storeCode = "R" + String.Format("{0:D5}", ++codeNumber); break; case (int)SourceCode.LocationsStores: storeCode = "L" + String.Format("{0:D5}", ++codeNumber); break; case (int)SourceCode.IndividualOthers: storeCode = "I" + String.Format("{0:D5}", ++codeNumber); break; case (int)SourceCode.Test: storeCode = "T" + String.Format("{0:D5}", ++codeNumber); break; } response.data.StoreSourceCode = storeCode; } } else//record is not present { switch (request.CodeTypeId) { case (int)SourceCode.Organizations: storeCode = "O" + String.Format("{0:D5}", ++codeNumber); break; case (int)SourceCode.Suppliers: storeCode = "S" + String.Format("{0:D5}", ++codeNumber); break; case (int)SourceCode.RepairShops: storeCode = "R" + String.Format("{0:D5}", ++codeNumber); break; case (int)SourceCode.LocationsStores: storeCode = "L" + String.Format("{0:D5}", ++codeNumber); break; case (int)SourceCode.IndividualOthers: storeCode = "I" + String.Format("{0:D5}", ++codeNumber); break; case (int)SourceCode.Test: storeCode = "T" + String.Format("{0:D5}", ++codeNumber); break; } response.data.StoreSourceCode = storeCode; } response.StatusCode = StaticResource.successStatusCode; response.Message = "Success"; } catch (Exception ex) { response.StatusCode = StaticResource.failStatusCode; response.Message = StaticResource.SomethingWrong + ex.Message; } return(response); }