Skip to content

Instantly share code, notes, and snippets.

View krittawatcode's full-sized avatar

Krittawat W krittawatcode

View GitHub Profile
@krittawatcode
krittawatcode / Allowance.sol
Last active March 7, 2021 07:49
For ETH Shared wallet app
// "SPDX-License-Identifier: UNLICENSED"
pragma solidity ^0.8.1;
import "https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/access/Ownable.sol";
contract Allowance is Ownable {
// using SafeMath for uint;
event AllowanceChanged(address indexed _forWho, address indexed _byWhom, uint _oldAmount, uint _newAmount);
@krittawatcode
krittawatcode / signup_handler.go
Last active February 3, 2021 17:40
Pass gin.Context as context
package handler
import (
"log"
"net/http"
"github.com/gin-gonic/gin"
"github.com/jacobsngoodwin/memrizr/account/model"
"github.com/jacobsngoodwin/memrizr/account/model/apperrors"
)
package repositories
import (
"database/sql"
"regexp"
"testing"
"github.com/jinzhu/gorm"
"github.com/krittawatcode/go-todo-clean-arch/domains"
"github.com/krittawatcode/go-todo-clean-arch/models"
package main
import (
"fmt"
_ "github.com/go-sql-driver/mysql"
"github.com/jinzhu/gorm"
"github.com/krittawatcode/go-todo-clean-arch/databases"
"github.com/krittawatcode/go-todo-clean-arch/deliveries/routes"
"github.com/krittawatcode/go-todo-clean-arch/models"
package database
import (
"fmt"
"os"
"github.com/jinzhu/gorm"
)
// DB is a global var for connect DB
package routes
import (
"github.com/gin-gonic/gin"
"github.com/krittawatcode/go-todo-clean-arch/databases"
"github.com/krittawatcode/go-todo-clean-arch/deliveries"
"github.com/krittawatcode/go-todo-clean-arch/repositories"
"github.com/krittawatcode/go-todo-clean-arch/usecases"
)
package deliveries
import (
"net/http"
"github.com/gin-gonic/gin"
"github.com/krittawatcode/go-todo-clean-arch/domains"
"github.com/krittawatcode/go-todo-clean-arch/models"
)
package usecases
import (
"github.com/krittawatcode/go-todo-clean-arch/domains"
"github.com/krittawatcode/go-todo-clean-arch/models"
)
// UseCase don't give a shit about the world!!
type todoUseCase struct {
todoRepo domains.ToDoRepository
package repositories
import (
_ "github.com/go-sql-driver/mysql" // use to connect db
"github.com/jinzhu/gorm"
"github.com/krittawatcode/go-todo-clean-arch/domains"
"github.com/krittawatcode/go-todo-clean-arch/models"
)
type todoRepository struct {
package domains
import (
"github.com/krittawatcode/go-todo-clean-arch/models"
)
// ToDoUseCase ...
type ToDoUseCase interface {
GetAllToDos() (t []models.Todo, err error)
CreateATodo(t *models.Todo) (err error)