package
This commit is contained in:
snoop
2017-05-30 12:13:26 +09:00
parent 8a85b63562
commit 05400007b2
4 changed files with 15 additions and 12 deletions

View File

@@ -0,0 +1,118 @@
package member
import (
"encoding/json"
"git.loafle.net/overflow/encryption_go"
"git.loafle.net/overflow/overflow_proxy_service/proxy"
"log"
)
type MemberService struct {
Id json.Number `json:"id,Number,omitempty"`
Email string `json:"email"`
PwSalt string `json:"pwSalt"`
Digest string `json:"digest"`
Name string `json:"name"`
Company string `json:"company"`
Phone string `json:"phone"`
}
var TARGET_DAO = "member"
func NewMember() *MemberService {
m := MemberService{}
return &m
}
func (m *MemberService) getMemberMap() map[string]string {
memMap := make(map[string]string)
str, err := json.Marshal(m)
if err != nil {
log.Fatal("Json Marshal Error: ", err)
}
memMap["com.loafle.overflow.member.model.Member"] = string(str)
return memMap
}
func (m *MemberService) Login() string {
result := m.ReadByEmail()
if result == "" {
return "login reject"
}
temp := MemberService{}
err := json.Unmarshal([]byte(result), &temp)
if err != nil {
return err.Error()
}
b := encryption.Check(m.PwSalt, temp.PwSalt, temp.Digest)
if !b {
return "login reject"
}
return "login success"
}
func (m *MemberService) Regist() string {
log.Println("Call Regist", m.Email, m.PwSalt)
pwSalt, digest, err := encryption.Encrypt(m.PwSalt)
if err != nil {
log.Fatal("encryption Encrypt Error: ", err)
}
m.PwSalt = pwSalt
m.Digest = digest
memMap := m.getMemberMap()
re := proxy.InvokeDB(TARGET_DAO, "create", memMap)
return re
}
func (m *MemberService) ReadByEmail() string {
log.Println("Call ReadByEmail", m.Email)
memMap := m.getMemberMap()
re := proxy.InvokeDB(TARGET_DAO, "findByEmail", memMap)
return re
}
func (m *MemberService) Read() string {
log.Println("Call Read", m.Email)
// Todo Call DB Gateway
m.Digest = "qwer5795"
//memMap := m.getMemberMap()
mm := make(map[string]string)
mm["id"] = string(m.Id)
log.Println("Read Member", m)
re := proxy.InvokeDB(TARGET_DAO, "find", mm)
return re
}
func (m *MemberService) Modify() string {
log.Println("Call Modify", m.Email, "::", m.PwSalt)
// Todo Call DB Gateway
m.Digest = "read"
memMap := m.getMemberMap()
re := proxy.InvokeDB(TARGET_DAO, "update", memMap)
return re
}
func (m *MemberService) Remove() string {
log.Println("Call Remove", m.Email)
// Todo Call DB Gateway
m.Digest = "read"
memMap := m.getMemberMap()
re := proxy.InvokeDB(TARGET_DAO, "delete", memMap)
return re
}

View File

@@ -0,0 +1,62 @@
package member
import (
"testing"
"log"
"git.loafle.net/overflow/overflow_proxy_service/proxy"
)
func TestMemberService_Login(t *testing.T) {
}
func TestMemberService_Regist(t *testing.T) {
m := &MemberService{
Email:"geek2@loafle.com",
PwSalt:"qwer5795",
Company:"Loafle",
Name:"Geek",
Phone:"010-4055-6699",
}
retMem := m.Regist()
t.Log(retMem)
}
func TestMemberLogin(t *testing.T) {
m := &MemberService{
Email:"geek@loafle.com",
PwSalt:"qwer5795",
}
b := m.Login()
t.Log("LOGIN RESULT : ", b)
}
func TestMemberService_Read(t *testing.T) {
mm := make(map[string] string)
mm["id"] = "12"
rr := proxy.InvokeDB(TARGET_DAO, "find", mm)
log.Println(rr)
}
func TestMemberService_ReadByEmail(t *testing.T) {
m := &MemberService{
Email:"geek@loafle.com",
}
mm := m.getMemberMap()
rr := proxy.InvokeDB(TARGET_DAO, "findByEmail", mm)
log.Println(rr)
}
func TestMemberUpdate(t *testing.T) {
m := &MemberService{
Id: "11",
Email:"keeg@loafle.com",
}
mm := m.getMemberMap()
rr := proxy.InvokeDB(TARGET_DAO, "update", mm)
log.Println(rr)
}