absensi

package module
v0.4.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 23, 2024 License: MIT Imports: 16 Imported by: 0

README

Absensi

Attendance Module

Release

go get -u all
go mod tidy
git tag                                 #check current version
git tag v0.0.1                          #set tag version
git push origin --tags                  #push tag version to repo
go list -m github.com/aiteung/absensi@v0.0.1   #publish to pkg dev, replace ORG/URL with your repo URL

Documentation

Index

Constants

View Source
const Keyword string = "ulbi"

Variables

This section is empty.

Functions

func ButtonMessage

func ButtonMessage(Info *types.MessageInfo, Message *waProto.Message, whatsapp *whatsmeow.Client)

func ButtonMessageJamKerja

func ButtonMessageJamKerja(karyawan Karyawan, aktifjamkerja time.Duration, presensihariini Presensi, Info *types.MessageInfo, whatsapp *whatsmeow.Client)

func ButtonMessageMasukKerja

func ButtonMessageMasukKerja(karyawan Karyawan, id interface{}, lokasi string, Info *types.MessageInfo, whatsapp *whatsmeow.Client)

func ButtonMessagePulangKerja

func ButtonMessagePulangKerja(karyawan Karyawan, aktifjamkerja time.Duration, id interface{}, lokasi string, Info *types.MessageInfo, whatsapp *whatsmeow.Client)

func ConvertTimestampToJkt added in v0.1.1

func ConvertTimestampToJkt(waktu time.Time) time.Time

func DeleteKaryawan added in v0.2.3

func DeleteKaryawan(db *mongo.Database, Id primitive.ObjectID) error

func DeletePresensi added in v0.2.3

func DeletePresensi(db *mongo.Database, Id primitive.ObjectID) error

func DurasiKerja added in v0.0.32

func DurasiKerja(durasi time.Duration, start time.Time, end time.Time) (string, string)

func ExportToExcel added in v0.1.1

func ExportToExcel(data []Presensi, filename string) error

func GetDateKemarin added in v0.3.2

func GetDateKemarin() (datekemarin time.Time)

func GetDateSekarang added in v0.2.7

func GetDateSekarang() (datesekarang time.Time)

func GetFirstLastDateCurrentMonth

func GetFirstLastDateCurrentMonth() (firstOfMonth, lastOfMonth time.Time)

func GetJamPulangRamadhan added in v0.4.3

func GetJamPulangRamadhan() (waktumasuk string)

func GetJamRamadhan added in v0.4.2

func GetJamRamadhan() (waktumasuk string)

func GetLokasi

func GetLokasi(mongoconn *mongo.Database, long float64, lat float64) (namalokasi string)

func GetMulaiPresensi added in v0.3.4

func GetMulaiPresensi() (waktumulai string)

func GetNamaFromPhoneNumber

func GetNamaFromPhoneNumber(mongoconn *mongo.Database, phone_number string) (nama string)

func GetTimeKerja added in v0.0.13

func GetTimeKerja(karyawan Karyawan) (timeKerjaFormatted string)

func GetTimePulang added in v0.0.14

func GetTimePulang(karyawan Karyawan) (timePulangFormatted string)

func GetTimeSekarang added in v0.0.13

func GetTimeSekarang() (timeSekarangFormatted string)

func GetTimestampFromObjectID added in v0.1.1

func GetTimestampFromObjectID(objectID primitive.ObjectID) time.Time

func Handler

func Handler(Pesan model.IteungMessage, mongoconn *mongo.Database) (reply string)

func InsertDokumenTidakMasuk added in v0.1.1

func InsertDokumenTidakMasuk(db *mongo.Database, Id primitive.ObjectID, keterangan string, lampiran string, Tanggal string) (InsertedID interface{}, err error)

func InsertKaryawan added in v0.2.3

func InsertKaryawan(db *mongo.Database, data bson.M) error

func InsertOneDoc added in v0.1.1

func InsertOneDoc(db *mongo.Database, collection string, doc interface{}) (insertedID interface{})

func InsertPresensi

func InsertPresensi(Pesan model.IteungMessage, Checkin string, Keterangan string, mongoconn *mongo.Database) (InsertedID interface{})

func InsertPresensiPulang added in v0.0.32

func InsertPresensiPulang(Pesan model.IteungMessage, Checkin string, Keterangan string, Durasi string, Persentase string, mongoconn *mongo.Database) (InsertedID interface{})

func ListMessageJamKerja

func ListMessageJamKerja(karyawan Karyawan, aktifjamkerja time.Duration, presensihariini Presensi, Info *types.MessageInfo, whatsapp *whatsmeow.Client)

func ListMessageMasukKerja

func ListMessageMasukKerja(karyawan Karyawan, id interface{}, lokasi string, Info *types.MessageInfo, whatsapp *whatsmeow.Client)

func ListMessagePulangKerja

func ListMessagePulangKerja(karyawan Karyawan, aktifjamkerja time.Duration, id interface{}, lokasi string, Info *types.MessageInfo, whatsapp *whatsmeow.Client)

func Member

func Member(Info *types.MessageInfo, Message *waProto.Message, mongoconn *mongo.Database, Pesan model.IteungMessage) (status bool, responseMessage string)

func MessageBelumBisaPresensiMasuk added in v0.3.4

func MessageBelumBisaPresensiMasuk(karyawan Karyawan) string

func MessageBelumBisaPresensiPulang added in v0.2.9

func MessageBelumBisaPresensiPulang(karyawan Karyawan) string

func MessageJamKerja

func MessageJamKerja(karyawan Karyawan, aktifjamkerja time.Duration, presensihariini Presensi) string

func MessageMasukKerja

func MessageMasukKerja(karyawan Karyawan, id interface{}, lokasi string) string

func MessageMasukKerjaCepat added in v0.0.13

func MessageMasukKerjaCepat(karyawan Karyawan, id interface{}, lokasi string, selisihmasuk string, keterangan string) string

func MessageMasukKerjaTepatWaktu added in v0.0.30

func MessageMasukKerjaTepatWaktu(karyawan Karyawan, id interface{}, lokasi string, keterangan string) string

func MessagePresensiDitutup added in v0.2.6

func MessagePresensiDitutup(karyawan Karyawan) string

func MessagePresensiSudahPulang added in v0.0.22

func MessagePresensiSudahPulang(karyawan Karyawan) string

func MessagePulangKerja

func MessagePulangKerja(karyawan Karyawan, durasikerja string, persentase string, keterangan string, id interface{}, lokasi string) string

func MessagePulangKerjaCepat added in v0.0.14

func MessagePulangKerjaCepat(karyawan Karyawan, durasikerja string, persentase string, keterangan string, id interface{}, lokasi string, selisihpulang string) string

func MessagePulangLebihLama added in v0.0.14

func MessagePulangLebihLama(karyawan Karyawan, durasikerja string, persentase string, keterangan string, id interface{}, lokasi string, selisihpulang string) string

func MessageSalahShareLoc added in v0.2.5

func MessageSalahShareLoc(karyawan Karyawan) string

func MessageTerlambatKerja added in v0.0.13

func MessageTerlambatKerja(karyawan Karyawan, id interface{}, lokasi string, selisihmasuk string, keterangan string) string

func MessageTidakMasukKerja

func MessageTidakMasukKerja(nama string, long, lat float64) string

func SelisihJamMasuk added in v0.0.9

func SelisihJamMasuk(karyawan Karyawan) (selisihJamFormatted string)

func SelisihJamMasukCepat added in v0.0.19

func SelisihJamMasukCepat(karyawan Karyawan) (selisihJamFormatted string)

func SelisihJamMasukCepatRamadhan added in v0.4.4

func SelisihJamMasukCepatRamadhan() (selisihJamFormatted string)

func SelisihJamMasukRamadhan added in v0.4.4

func SelisihJamMasukRamadhan() (selisihJamFormatted string)

func SelisihJamPulang added in v0.0.15

func SelisihJamPulang(karyawan Karyawan) (selisihJamFormatted string)

func SelisihJamPulangCepat added in v0.0.19

func SelisihJamPulangCepat(karyawan Karyawan) (selisihJamFormatted string)

func SelisihJamPulangCepatRamadhan added in v0.4.4

func SelisihJamPulangCepatRamadhan() (selisihJamFormatted string)

func SelisihJamPulangRamadhan added in v0.4.4

func SelisihJamPulangRamadhan() (selisihJamFormatted string)

func UpdateKaryawan added in v0.2.0

func UpdateKaryawan(db *mongo.Database, Id primitive.ObjectID, update bson.M) error

func UpdatePresensi added in v0.1.1

func UpdatePresensi(db *mongo.Database, Id primitive.ObjectID, update bson.M) error

Types

type Geometry

type Geometry struct {
	Type        string      `json:"type" bson:"type"`
	Coordinates interface{} `json:"coordinates" bson:"coordinates"`
}

type JamKerja

type JamKerja struct {
	Durasi     int      `bson:"durasi,omitempty"`
	Jam_masuk  string   `bson:"jam_masuk,omitempty"`
	Jam_keluar string   `bson:"jam_keluar,omitempty"`
	Gmt        int      `bson:"gmt,omitempty"`
	Hari       []string `bson:"hari,omitempty"`
	Shift      int      `bson:"shift,omitempty"`
	Piket_tim  string   `bson:"piket_tim,omitempty"`
}

type Karyawan

type Karyawan struct {
	ID             primitive.ObjectID `bson:"_id,omitempty" json:"_id"`
	Nama           string             `bson:"nama" json:"nama"`
	Phone_number   string             `bson:"phone_number" json:"phone_number"`
	Jabatan        string             `bson:"jabatan" json:"jabatan"`
	NikKtp         string             `gorm:"column:nik_ktp" json:"nik_ktp"`
	NikKepegawaian string             `gorm:"column:nik_kepegawaian" json:"nik_kepegawaian"`
	Jam_kerja      []JamKerja         `bson:"jam_kerja" json:"jam_kerja"`
	Hari_kerja     []string           `bson:"hari_kerja" json:"hari_kerja"`
}

func GetBiodataFromId added in v0.1.1

func GetBiodataFromId(mongoconn *mongo.Database, Id primitive.ObjectID) (staf Karyawan)

func GetBiodataFromPhoneNumber

func GetBiodataFromPhoneNumber(mongoconn *mongo.Database, phone_number string) (staf Karyawan)

func GetDataKaryawan added in v0.1.1

func GetDataKaryawan(db *mongo.Database) (data []Karyawan, err error)

func GetKaryawanFromPhoneNumber

func GetKaryawanFromPhoneNumber(mongoconn *mongo.Database, phone_number string) (staf Karyawan)

func GetOneKaryawan added in v0.1.1

func GetOneKaryawan(Id primitive.ObjectID, db *mongo.Database) (data Karyawan, err error)

type Lokasi

type Lokasi struct {
	ID       primitive.ObjectID `bson:"_id,omitempty"`
	Nama     string             `bson:"nama,omitempty"`
	Batas    Geometry           `bson:"batas,omitempty"`
	Kategori string             `bson:"kategori,omitempty"`
}

type Presensi

type Presensi struct {
	Id           primitive.ObjectID `bson:"_id,omitempty" json:"_id"`
	Longitude    float64            `bson:"longitude" json:"longitude"`
	Latitude     float64            `bson:"latitude" json:"latitude"`
	Location     string             `bson:"location" json:"location"`
	Phone_number string             `bson:"phone_number" json:"phone_number"`
	Checkin      string             `bson:"checkin" json:"checkin"`
	Datetime     time.Time          `bson:"datetime,omitempty"`
	Karyawan     Karyawan           `bson:"biodata" json:"biodata"`
	Keterangan   string             `bson:"ket" json:"ket"`
	Lampiran     string             `bson:"lampiran" json:"lampiran"`
	Tanggal      string             `bson:"tgl" json:"tgl"`
}

func GetDataPresensi added in v0.1.1

func GetDataPresensi(db *mongo.Database) (data []Presensi, err error)

func GetDataPresensiMasukBulanan added in v0.3.7

func GetDataPresensiMasukBulanan(bulan time.Month, tahun int, db *mongo.Database) (data []Presensi, err error)

func GetDataPresensiMasukHarian added in v0.1.1

func GetDataPresensiMasukHarian(db *mongo.Database) (data []Presensi, err error)

func GetDataPresensiMasukHarianKemarin added in v0.3.2

func GetDataPresensiMasukHarianKemarin(db *mongo.Database) (data []Presensi, err error)

func GetOnePresensi added in v0.1.1

func GetOnePresensi(Id primitive.ObjectID, db *mongo.Database) (data Presensi, err error)

func GetPresensiCurrentMonth

func GetPresensiCurrentMonth(mongoconn *mongo.Database) (allpresensi []Presensi)

func GetPresensiTodayFromPhoneNumber

func GetPresensiTodayFromPhoneNumber(mongoconn *mongo.Database, phone_number string) (presensi Presensi)

type Pulang added in v0.0.32

type Pulang struct {
	Id           primitive.ObjectID `bson:"_id,omitempty" json:"_id"`
	Longitude    float64            `bson:"longitude" json:"longitude"`
	Latitude     float64            `bson:"latitude" json:"latitude"`
	Location     string             `bson:"location" json:"location"`
	Phone_number string             `bson:"phone_number" json:"phone_number"`
	Checkin      string             `bson:"checkin" json:"checkin"`
	Datetime     time.Time          `bson:"datetime" json:"datetime"`
	Durasi       string             `bson:"durasi" json:"durasi"`
	Persentase   string             `bson:"persentase" json:"persentase"`
	Keterangan   string             `bson:"ket" json:"ket"`
	Status       string             `bson:"status" json:"status"`
	Karyawan     Karyawan           `bson:"biodata" json:"biodata"`
}

func GetDataPresensiPulang added in v0.1.1

func GetDataPresensiPulang(db *mongo.Database) (data []Pulang, err error)

func GetDataPresensiPulangBulanan added in v0.3.7

func GetDataPresensiPulangBulanan(bulan time.Month, tahun int, db *mongo.Database) (data []Pulang, err error)

func GetDataPresensiPulangHarian added in v0.1.1

func GetDataPresensiPulangHarian(db *mongo.Database) (data []Pulang, err error)

func GetDataPresensiPulangHarianKemarin added in v0.3.2

func GetDataPresensiPulangHarianKemarin(db *mongo.Database) (data []Pulang, err error)

func GetOnePresensiPulang added in v0.1.1

func GetOnePresensiPulang(Id primitive.ObjectID, db *mongo.Database) (data Pulang, err error)

type RekapPresensi

type RekapPresensi struct {
	ID            primitive.ObjectID `bson:"_id,omitempty"`
	In            Presensi           `bson:"in,omitempty"`
	Out           Presensi           `bson:"out,omitempty"`
	Lembur        Presensi           `bson:"lembur,omitempty"`
	Keterangan    string             `bson:"keterangan,omitempty"`
	TotalJamKerja primitive.DateTime `bson:"totaljamkerja,omitempty"`
	Late          primitive.DateTime `bson:"late,omitempty"`
}

type TblRtm added in v0.3.7

type TblRtm struct {
	IdUsers      int    `gorm:"primaryKey;column:id_users" json:"id_users"`
	FullName     string `gorm:"column:full_name" json:"full_name"`
	Email        string `gorm:"column:email" json:"email"`
	NomorTelepon string `gorm:"column:nomo_telepon" json:"nomo_telepon"`
	IdUserLevel  int    `gorm:"column:id_user_level" json:"id_user_level"`
	IdSiap       int    `gorm:"column:id_siap" json:"id_siap"`
	JabatanId    int    `gorm:"column:jabatan_id" json:"jabatan_id"`
}

Karyawan dari RTM

func GetKaryawanByPhoneNumberRtm added in v0.3.7

func GetKaryawanByPhoneNumberRtm(db *sql.DB, phoneNumber string) TblRtm

func GetNamaFromPhoneNumberRtm added in v0.3.7

func GetNamaFromPhoneNumberRtm(db *sql.DB, phoneNumber string) (TblRtm, error)

type TidakMasuk added in v0.1.1

type TidakMasuk struct {
	Id         primitive.ObjectID `bson:"_id,omitempty" json:"_id"`
	Nama       string             `bson:"nama" json:"nama"`
	Jabatan    string             `bson:"jabatan" json:"jabatan"`
	Keterangan string             `bson:"ket" json:"ket"`
	Lampiran   string             `bson:"lampiran" json:"lampiran"`
}

type User added in v0.1.1

type User struct {
	Id          primitive.ObjectID `bson:"_id,omitempty" json:"_id,omitempty"`
	Nama        string             `bson:"nama" json:"nama"`
	PhoneNumber string             `bson:"phone_number" json:"phone_number"`
	Role        string             `bson:"role" json:"role"`
}

func GetDataUser added in v0.1.1

func GetDataUser(PhoneNumber string, db *mongo.Database) (data User, err error)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL