@Override
    public int hashCode() {
        int result = productId;
        result = 31 * result + (productName != null ? productName.hashCode() : 0);
        result = 31 * result + companyId;
        result = 31 * result + (productDescription != null ? productDescription.hashCode() : 0);
        result = 31 * result + manufacturerId;
        result = 31 * result + supplierId;
        result = 31 * result + (pprice != +0.0f ? Float.floatToIntBits(pprice) : 0);
        result = 31 * result + (sprice != +0.0f ? Float.floatToIntBits(sprice) : 0);
        result = 31 * result + categoryId;
        result = 31 * result + subCategoryId;
        result = 31 * result + packSize;
        result = 31 * result + attachmentId;
        result = 31 * result + (attachmentUrl != null ? attachmentUrl.hashCode() : 0);
        result = 31 * result + (active ? 1 : 0);
        result = 31 * result + (deleted ? 1 : 0);
        result = 31 * result + (createdOn != null ? createdOn.hashCode() : 0);
        result = 31 * result + (modifiedOn != null ? modifiedOn.hashCode() : 0);
        result = 31 * result + createdBy;
        result = 31 * result + modifiedBy;
        return result;
    }