Skip to content

Instantly share code, notes, and snippets.

View pavankjadda's full-sized avatar
😀
Follow me on Twitter @pavankjadda

Pavan Kumar Jadda pavankjadda

😀
Follow me on Twitter @pavankjadda
View GitHub Profile
@pavankjadda
pavankjadda / Add or Remove years from Date Time in SQL server.md
Last active October 25, 2023 14:41
Add or Remove years from Date Time in SQL server
  1. Add 5 years to user date of birth timestamp
update user set date_of_birth=dateadd(year, 5, date_of_birth) where datepart(year, date_of_birth)>1965;

  1. Remove 100 years from user date of birth timestamp
update user set date_of_birth=dateadd(year , -100, date_of_birth) where datepart(year, date_of_birth)>2015;
@pavankjadda
pavankjadda / EmployeeProjectView.md
Created January 6, 2021 04:11
Employee Project View
package com.pj.multicolumnsearch.domain;

import lombok.Data;
import org.springframework.data.annotation.Immutable;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
@pavankjadda
pavankjadda / Find Employees By Example Matcher.md
Created January 6, 2021 04:14
findEmployeeProjectsExampleMatcher
	@Override
	public Page<EmployeeProjectView> findEmployeeProjectsExampleMatcher(EmployeeRequestDTO employeeRequestDTO)
	{
		/* Build Search object */
		EmployeeProjectView employeeProjectView=new EmployeeProjectView();
		employeeProjectView.setEmployeeId(employeeRequestDTO.getEmployeeId());
		employeeProjectView.setLastName(employeeRequestDTO.getFilterText());
		employeeProjectView.setFirstName(employeeRequestDTO.getFilterText());
		try
@pavankjadda
pavankjadda / getSpecification.md
Last active January 12, 2021 06:22
Get Specification
/**
 * Builds and return specification object that filters data based on search string
 *
 * @param employeeRequestDTO Employee Projects Request DTO object
 *
 * @return Specification with Employee Id and Filter Text
 */
private Specification<EmployeeProjectView> getSpecification(EmployeeRequestDTO employeeRequestDTO)
{
//Predicate for Employee Projects data
  Predicate predicateForData = criteriaBuilder.or(
      criteriaBuilder.like(root.get("firstName"), "%" + employeeRequestDTO.getFilterText() + "%"),
      criteriaBuilder.like(root.get("lastName"), "%" + employeeRequestDTO.getFilterText() + "%"),
      criteriaBuilder.like(root.get("projectId").as(String.class), "%" + employeeRequestDTO.getFilterText() + "%"),
      criteriaBuilder.like(root.get("projectName"), "%" + employeeRequestDTO.getFilterText() + "%"),
      criteriaBuilder.like(root.get("projectBudget").as(String.class), "%" + employeeRequestDTO.getFilterText() + "%"),
      criteriaBuilder.like(root.get("projectLocation"), "%" + employeeRequestDTO.getFilterText() + "%"));
@pavankjadda
pavankjadda / Multi Column Search - First Predicate.md
Created January 12, 2021 06:32
Multi Column Search - First Predicate
Predicate predicateForEmployee = criteriaBuilder.equal( root.get("employeeId"), employeeRequestDTO.getEmployeeId());
@pavankjadda
pavankjadda / Multi Column Search - findEmployeeProjectsBySpecification.md
Created January 12, 2021 06:37
Multi Column Search - findEmployeeProjectsBySpecification.md
@Override
public Page<EmployeeProjectView> findEmployeeProjectsBySpecification(EmployeeRequestDTO employeeRequestDTO)
{
  return employeeProjectViewRepository.findAll(getSpecification(employeeRequestDTO), PageRequest.of(employeeRequestDTO.getCurrentPageNumber(), employeeRequestDTO.getPageSize(),
      Sort.by(isNotNullOrEmpty(employeeRequestDTO.getSortDirection()) ? Sort.Direction.fromString(employeeRequestDTO.getSortDirection()) : Sort.Direction.DESC, employeeRequestDTO.getSortColumnName())));
}
@pavankjadda
pavankjadda / Multi Column Search - Query.md
Created January 12, 2021 06:40
Multi Column Search - Query.md
public interface EmployeeProjectViewRepository extends JpaRepository<EmployeeProjectView, Long>,  JpaSpecificationExecutor<EmployeeProjectView>
{
	@Query(value = "SELECT e FROM EmployeeProjectView as e WHERE e.employeeId=:employeeId and (:inputString is null or e.lastName like %:inputString% ) and " +
			"(:inputString is null or e.firstName like %:inputString%) and (:inputString is null or concat(e.projectId,'') like %:inputString%) and " +
			" (:inputString is null or e.projectName like %:inputString%) and  (:inputString is null or concat(e.projectBudget,'') like %:inputString%) and "+
			" (:inputString is null or e.projectLocation like %:inputString%)"
	)
	Page<EmployeeProjectView> findAllByInputString(Long employeeId, String inputString, Pageable pageable);
}
@pavankjadda
pavankjadda / Delete Jenkins Job History MultiBranch Pipeline.md
Last active July 15, 2022 04:02
Delete Jenkins Job History MultiBranch Pipeline
MAX_BUILDS = 5
MAX_MASTER_BUILDS = 20

//Delete all builds from master branch jobs(except last 20)
for (job in Jenkins.instance.items) {
  if (job instanceof jenkins.branch.MultiBranchProject) {
    job = job.getJob("master")
    if (job != null) {
      def recent = job.builds.limit(MAX_MASTER_BUILDS)
@pavankjadda
pavankjadda / Refresh all SQL Server views.md
Created June 7, 2021 16:20
Refresh all SQL Server views
USE DATABASE_NAME
GO
DECLARE @sqlcmd NVARCHAR(MAX) = ''
SELECT @sqlcmd = @sqlcmd +  'EXEC sp_refreshview ''' + name + ''';' +
                 ''
FROM sys.objects AS so WHERE so.type = 'V'

SELECT @sqlcmd